@gooddata/sdk-ui-catalog 11.36.0-alpha.2 → 11.36.0-alpha.6

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.
@@ -10,7 +10,7 @@ import { CreateObjectButton } from "../header/CreateObjectButton.js";
10
10
  import { Header } from "../header/Header.js";
11
11
  import { useCatalogItemOpen } from "../main/hooks/useCatalogItemOpen.js";
12
12
  import { Main } from "../main/Main.js";
13
- import { useIsParametersEnabled } from "../parameter/gate.js";
13
+ import { useCanManageParameter } from "../parameter/gate.js";
14
14
  import { ParameterMutationProvider } from "../parameter/ParameterMutationContext.js";
15
15
  import { PermissionsGate } from "../permission/PermissionsGate.js";
16
16
  import { useIsCatalogQualityEnabled } from "../quality/gate.js";
@@ -21,7 +21,7 @@ import { useIsCatalogTrendingObjectsEnabled } from "../tabs/gate.js";
21
21
  import { Layout } from "./Layout.js";
22
22
  export function Catalog({ openCatalogItemRef, backend, workspace, onCatalogItemOpenClick, onCatalogItemNavigation, onCatalogDetailOpened, onCatalogDetailClosed, onCreateObject, }) {
23
23
  const intl = useIntl();
24
- const isParametersEnabled = useIsParametersEnabled();
24
+ const showParameter = useCanManageParameter();
25
25
  const isTrendingEnabled = useIsCatalogTrendingObjectsEnabled();
26
26
  const isQualityEnabled = useIsCatalogQualityEnabled();
27
27
  const { open, openedItem, setItemOpened, onOpenDetail, onCloseDetail, onOpenClick } = useCatalogItemOpen(onCatalogItemOpenClick, onCatalogDetailOpened, onCatalogDetailClosed, openCatalogItemRef);
@@ -29,6 +29,6 @@ export function Catalog({ openCatalogItemRef, backend, workspace, onCatalogItemO
29
29
  id: "analyticsCatalog.error.unknown.description",
30
30
  }) }), unauthorizedNode: _jsx(ErrorComponent, { message: intl.formatMessage({ id: "analyticsCatalog.error.unauthorized.message" }), description: intl.formatMessage({
31
31
  id: "analyticsCatalog.error.unauthorized.description",
32
- }) }), children: _jsx(CatalogFeedProvider, { backend: backend, workspace: workspace, children: _jsxs(ParameterMutationProvider, { children: [_jsx(Header, { searchNode: _jsx(FullTextSearchInput, {}), createNode: onCreateObject ? (_jsx(CreateObjectButton, { onCreateObject: onCreateObject, showParameter: isParametersEnabled })) : null }), isTrendingEnabled ? (_jsx(CatalogTabs, { onItemClick: onOpenDetail })) : isQualityEnabled ? (_jsx(QualityScoreCard, {})) : null, _jsx(Main, { workspace: workspace, backend: backend, open: open, openedItem: openedItem, setItemOpened: setItemOpened, onOpenDetail: onOpenDetail, onCloseDetail: onCloseDetail, onOpenClick: onOpenClick, onCatalogItemNavigation: onCatalogItemNavigation })
32
+ }) }), children: _jsx(CatalogFeedProvider, { backend: backend, workspace: workspace, children: _jsxs(ParameterMutationProvider, { children: [_jsx(Header, { searchNode: _jsx(FullTextSearchInput, {}), createNode: onCreateObject ? (_jsx(CreateObjectButton, { onCreateObject: onCreateObject, showParameter: showParameter })) : null }), isTrendingEnabled ? (_jsx(CatalogTabs, { onItemClick: onOpenDetail })) : isQualityEnabled ? (_jsx(QualityScoreCard, {})) : null, _jsx(Main, { workspace: workspace, backend: backend, open: open, openedItem: openedItem, setItemOpened: setItemOpened, onOpenDetail: onOpenDetail, onCloseDetail: onCloseDetail, onOpenClick: onOpenClick, onCatalogItemNavigation: onCatalogItemNavigation })
33
33
  ] }) }) }) }));
34
34
  }
@@ -2,3 +2,7 @@
2
2
  * Catalog parameter feature gate.
3
3
  */
4
4
  export declare function useIsParametersEnabled(): boolean;
5
+ /**
6
+ * Whether the current user can manage parameters in the catalog.
7
+ */
8
+ export declare function useCanManageParameter(): boolean;
@@ -1,8 +1,16 @@
1
1
  // (C) 2026 GoodData Corporation
2
- import { useFeatureFlag } from "../permission/PermissionsContext.js";
2
+ import { useFeatureFlag, useWorkspacePermission } from "../permission/PermissionsContext.js";
3
3
  /**
4
4
  * Catalog parameter feature gate.
5
5
  */
6
6
  export function useIsParametersEnabled() {
7
7
  return useFeatureFlag("enableParameters");
8
8
  }
9
+ /**
10
+ * Whether the current user can manage parameters in the catalog.
11
+ */
12
+ export function useCanManageParameter() {
13
+ const isParametersEnabled = useIsParametersEnabled();
14
+ const canManageProject = useWorkspacePermission("canManageProject");
15
+ return isParametersEnabled && canManageProject;
16
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-ui-catalog",
3
- "version": "11.36.0-alpha.2",
3
+ "version": "11.36.0-alpha.6",
4
4
  "description": "GoodData SDK - Analytics Catalog",
5
5
  "license": "MIT",
6
6
  "author": "GoodData Corporation",
@@ -43,15 +43,15 @@
43
43
  "lodash-es": "^4.17.23",
44
44
  "react-intl": "7.1.11",
45
45
  "tslib": "2.8.1",
46
- "yaml": "^2.2.2",
47
- "zod": "^4.3.6",
48
- "@gooddata/sdk-backend-spi": "11.36.0-alpha.2",
49
- "@gooddata/sdk-model": "11.36.0-alpha.2",
50
- "@gooddata/sdk-ui": "11.36.0-alpha.2",
51
- "@gooddata/sdk-ui-kit": "11.36.0-alpha.2",
52
- "@gooddata/sdk-ui-semantic-search": "11.36.0-alpha.2",
53
- "@gooddata/sdk-ui-theme-provider": "11.36.0-alpha.2",
54
- "@gooddata/util": "11.36.0-alpha.2"
46
+ "yaml": "2.8.3",
47
+ "zod": "4.3.6",
48
+ "@gooddata/sdk-backend-spi": "11.36.0-alpha.6",
49
+ "@gooddata/sdk-ui": "11.36.0-alpha.6",
50
+ "@gooddata/sdk-model": "11.36.0-alpha.6",
51
+ "@gooddata/sdk-ui-kit": "11.36.0-alpha.6",
52
+ "@gooddata/sdk-ui-semantic-search": "11.36.0-alpha.6",
53
+ "@gooddata/util": "11.36.0-alpha.6",
54
+ "@gooddata/sdk-ui-theme-provider": "11.36.0-alpha.6"
55
55
  },
56
56
  "devDependencies": {
57
57
  "@microsoft/api-documenter": "^7.17.0",
@@ -91,11 +91,11 @@
91
91
  "typescript": "5.9.3",
92
92
  "vitest": "4.1.0",
93
93
  "vitest-dom": "0.1.1",
94
- "@gooddata/eslint-config": "11.36.0-alpha.2",
95
- "@gooddata/i18n-toolkit": "11.36.0-alpha.2",
96
- "@gooddata/oxlint-config": "11.36.0-alpha.2",
97
- "@gooddata/stylelint-config": "11.36.0-alpha.2",
98
- "@gooddata/sdk-backend-mockingbird": "11.36.0-alpha.2"
94
+ "@gooddata/i18n-toolkit": "11.36.0-alpha.6",
95
+ "@gooddata/oxlint-config": "11.36.0-alpha.6",
96
+ "@gooddata/eslint-config": "11.36.0-alpha.6",
97
+ "@gooddata/sdk-backend-mockingbird": "11.36.0-alpha.6",
98
+ "@gooddata/stylelint-config": "11.36.0-alpha.6"
99
99
  },
100
100
  "peerDependencies": {
101
101
  "react": "^18.0.0 || ^19.0.0",