@gooddata/sdk-ui-catalog 11.36.0-alpha.1 → 11.36.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/catalog/Catalog.js +3 -3
- package/esm/lineage/utils.d.ts +3 -3
- package/esm/lineage/utils.js +5 -16
- package/esm/parameter/gate.d.ts +4 -0
- package/esm/parameter/gate.js +9 -1
- package/package.json +13 -13
package/esm/catalog/Catalog.js
CHANGED
|
@@ -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 {
|
|
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
|
|
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:
|
|
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
|
}
|
package/esm/lineage/utils.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type IReferencesResult } from "@gooddata/sdk-backend-spi";
|
|
2
|
-
import { type
|
|
3
|
-
export declare function objRefToId(
|
|
4
|
-
export declare function objRefToType(
|
|
2
|
+
import { type IdentifierRef, type ObjectType } from "@gooddata/sdk-model";
|
|
3
|
+
export declare function objRefToId(ref: IdentifierRef): string;
|
|
4
|
+
export declare function objRefToType(ref: IdentifierRef): "unknown" | ObjectType;
|
|
5
5
|
export declare function filterNodes(nodes: IReferencesResult["nodes"], edges: IReferencesResult["edges"], typesToFilter?: ObjectType[]): {
|
|
6
6
|
nodes: IReferencesResult["nodes"];
|
|
7
7
|
edges: IReferencesResult["edges"];
|
package/esm/lineage/utils.js
CHANGED
|
@@ -1,22 +1,11 @@
|
|
|
1
1
|
// (C) 2025-2026 GoodData Corporation
|
|
2
2
|
import {} from "@gooddata/sdk-backend-spi";
|
|
3
|
-
import {
|
|
4
|
-
export function objRefToId(
|
|
5
|
-
|
|
6
|
-
if (objRef.type) {
|
|
7
|
-
return `${objRef.type}/${objRef.identifier}`;
|
|
8
|
-
}
|
|
9
|
-
return objRef.identifier;
|
|
10
|
-
}
|
|
11
|
-
return objRef.uri;
|
|
3
|
+
import {} from "@gooddata/sdk-model";
|
|
4
|
+
export function objRefToId(ref) {
|
|
5
|
+
return ref.type ? `${ref.type}/${ref.identifier}` : ref.identifier;
|
|
12
6
|
}
|
|
13
|
-
export function objRefToType(
|
|
14
|
-
|
|
15
|
-
if (objRef.type) {
|
|
16
|
-
return objRef.type;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return "unknown";
|
|
7
|
+
export function objRefToType(ref) {
|
|
8
|
+
return ref.type ?? "unknown";
|
|
20
9
|
}
|
|
21
10
|
export function filterNodes(nodes, edges, typesToFilter) {
|
|
22
11
|
if (!typesToFilter) {
|
package/esm/parameter/gate.d.ts
CHANGED
package/esm/parameter/gate.js
CHANGED
|
@@ -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.
|
|
3
|
+
"version": "11.36.0-alpha.3",
|
|
4
4
|
"description": "GoodData SDK - Analytics Catalog",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "GoodData Corporation",
|
|
@@ -45,13 +45,13 @@
|
|
|
45
45
|
"tslib": "2.8.1",
|
|
46
46
|
"yaml": "^2.2.2",
|
|
47
47
|
"zod": "^4.3.6",
|
|
48
|
-
"@gooddata/sdk-
|
|
49
|
-
"@gooddata/sdk-
|
|
50
|
-
"@gooddata/sdk-ui
|
|
51
|
-
"@gooddata/sdk-ui-kit": "11.36.0-alpha.
|
|
52
|
-
"@gooddata/sdk-ui": "11.36.0-alpha.
|
|
53
|
-
"@gooddata/sdk-ui-theme-provider": "11.36.0-alpha.
|
|
54
|
-
"@gooddata/util": "11.36.0-alpha.
|
|
48
|
+
"@gooddata/sdk-backend-spi": "11.36.0-alpha.3",
|
|
49
|
+
"@gooddata/sdk-model": "11.36.0-alpha.3",
|
|
50
|
+
"@gooddata/sdk-ui": "11.36.0-alpha.3",
|
|
51
|
+
"@gooddata/sdk-ui-kit": "11.36.0-alpha.3",
|
|
52
|
+
"@gooddata/sdk-ui-semantic-search": "11.36.0-alpha.3",
|
|
53
|
+
"@gooddata/sdk-ui-theme-provider": "11.36.0-alpha.3",
|
|
54
|
+
"@gooddata/util": "11.36.0-alpha.3"
|
|
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.
|
|
95
|
-
"@gooddata/i18n-toolkit": "11.36.0-alpha.
|
|
96
|
-
"@gooddata/
|
|
97
|
-
"@gooddata/
|
|
98
|
-
"@gooddata/
|
|
94
|
+
"@gooddata/eslint-config": "11.36.0-alpha.3",
|
|
95
|
+
"@gooddata/i18n-toolkit": "11.36.0-alpha.3",
|
|
96
|
+
"@gooddata/oxlint-config": "11.36.0-alpha.3",
|
|
97
|
+
"@gooddata/sdk-backend-mockingbird": "11.36.0-alpha.3",
|
|
98
|
+
"@gooddata/stylelint-config": "11.36.0-alpha.3"
|
|
99
99
|
},
|
|
100
100
|
"peerDependencies": {
|
|
101
101
|
"react": "^18.0.0 || ^19.0.0",
|