@gooddata/sdk-ui-ext 11.57.0-alpha.2 → 11.57.0-alpha.4
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/NOTICE +4 -4
- package/esm/index.d.ts +1 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -0
- package/esm/insightPicker/InsightPickerCore.js +1 -1
- package/esm/insightView/InsightView.js +1 -1
- package/esm/internal/components/BaseVisualization.js +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.d.ts +1 -0
- package/esm/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.js +2 -2
- package/esm/internal/components/dialogs/userManagementDialogs/Details/EditUserDetails.js +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/UserEditDialog.d.ts +1 -0
- package/esm/internal/components/dialogs/userManagementDialogs/UserEditDialog.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/UserEditDialog.js +2 -2
- package/esm/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.d.ts +1 -0
- package/esm/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.js +2 -2
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.d.ts +2 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.js +2 -2
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.d.ts +2 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.js +4 -4
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/granularPermissionUtils.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/granularPermissionUtils.js +7 -3
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/locales.d.ts +6 -0
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/locales.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/locales.js +4 -0
- package/esm/internal/components/insightList/useInsightPagedList.js +1 -1
- package/esm/internal/translations/en-US.localization-bundle.d.ts +38 -2
- package/esm/internal/translations/en-US.localization-bundle.d.ts.map +1 -1
- package/esm/internal/translations/en-US.localization-bundle.js +42 -6
- package/esm/notificationsPanel/Notification/Notification.d.ts.map +1 -1
- package/esm/notificationsPanel/Notification/Notification.js +1 -0
- package/esm/sdk-ui-ext.d.ts +14 -0
- package/esm/share/ObjectShareDialog.d.ts.map +1 -1
- package/esm/share/ObjectShareDialog.js +14 -29
- package/esm/share/messages.d.ts +38 -2
- package/esm/share/messages.d.ts.map +1 -1
- package/esm/share/messages.js +20 -2
- package/esm/share/objectShareController.helpers.d.ts +5 -0
- package/esm/share/objectShareController.helpers.d.ts.map +1 -1
- package/esm/share/objectShareController.helpers.js +37 -0
- package/esm/share/objectShareController.types.d.ts +6 -16
- package/esm/share/objectShareController.types.d.ts.map +1 -1
- package/esm/share/useCopyObjectPermissions.d.ts +12 -0
- package/esm/share/useCopyObjectPermissions.d.ts.map +1 -0
- package/esm/share/useCopyObjectPermissions.js +30 -0
- package/esm/share/useObjectShareController.d.ts.map +1 -1
- package/esm/share/useObjectShareController.js +7 -9
- package/package.json +23 -24
- package/styles/css/main.css +7 -2
- package/styles/css/main.css.map +1 -1
package/NOTICE
CHANGED
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
|
|
8
8
|
The following 3rd-party software packages may be used by or distributed with gooddata-ui-sdk. Any information relevant to third-party vendors listed below are collected using common, reasonable means.
|
|
9
9
|
|
|
10
|
-
Date generated: 2026-9-
|
|
10
|
+
Date generated: 2026-9-14
|
|
11
11
|
|
|
12
|
-
Revision ID:
|
|
12
|
+
Revision ID: b22f44aea3e618f71ec62f6853d9310a210cb741
|
|
13
13
|
|
|
14
14
|
================================================================================
|
|
15
15
|
================================================================================
|
|
@@ -22305,7 +22305,7 @@ MIT
|
|
|
22305
22305
|
|
|
22306
22306
|
Authors: ljharb@gmail.com
|
|
22307
22307
|
Package Manager: NPM
|
|
22308
|
-
Project URL: https://
|
|
22308
|
+
Project URL: https://github.com/ljharb/call-bind#readme
|
|
22309
22309
|
Package Download URL: https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz
|
|
22310
22310
|
Dependency Path: @formatjs/cli-lib > @formatjs/ts-transformer > @types/json-stable-stringify > json-stable-stringify > call-bind > @formatjs/cli-lib > @formatjs/ts-transformer > json-stable-stringify > call-bind > @formatjs/cli-lib > @types/json-stable-stringify > json-stable-stringify > call-bind > @formatjs/cli-lib > json-stable-stringify > call-bind > json-stable-stringify > call-bind
|
|
22311
22311
|
File Path(s): common/config/subspaces/sdk/pnpm-lock.yaml
|
|
@@ -64353,4 +64353,4 @@ File Path(s): common/config/subspaces/sdk/pnpm-lock.yaml
|
|
|
64353
64353
|
--------------------------------------------------------------------------------
|
|
64354
64354
|
--------------------------------------------------------------------------------
|
|
64355
64355
|
|
|
64356
|
-
Report Generated by FOSSA on 2026-9-
|
|
64356
|
+
Report Generated by FOSSA on 2026-9-14
|
package/esm/index.d.ts
CHANGED
|
@@ -82,6 +82,7 @@ export { ObjectShareDialog, type IObjectShareDialogProps } from "./share/ObjectS
|
|
|
82
82
|
export { sortShareableLabels } from "./share/objectShareController.helpers.js";
|
|
83
83
|
export type { GranteeEdit, IGranteeIdentityFacts, IObjectShareDraft, IObjectShareGrantee, IRuleEdit, ObjectSharePermissionLevel, } from "./share/objectShareController.types.js";
|
|
84
84
|
export { useApplyObjectPermissions } from "./share/useApplyObjectPermissions.js";
|
|
85
|
+
export { useCopyObjectPermissions } from "./share/useCopyObjectPermissions.js";
|
|
85
86
|
export { accessListToSummary, draftToSummary, type ObjectShareLevel, summaryOtherGranteeCount, summaryToShareLevel, } from "./share/accessSummary.js";
|
|
86
87
|
export { isPermissionsNotAvailable } from "./share/accessErrors.js";
|
|
87
88
|
export { type IObjectAccessLevel, type IUseObjectAccessLevelOptions, useObjectAccessLevel, } from "./share/useObjectAccessLevel.js";
|
package/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/esm/index.js
CHANGED
|
@@ -75,6 +75,7 @@ export { useInsightPagedList, } from "./internal/components/insightList/useInsig
|
|
|
75
75
|
export { ObjectShareDialog } from "./share/ObjectShareDialog.js";
|
|
76
76
|
export { sortShareableLabels } from "./share/objectShareController.helpers.js";
|
|
77
77
|
export { useApplyObjectPermissions } from "./share/useApplyObjectPermissions.js";
|
|
78
|
+
export { useCopyObjectPermissions } from "./share/useCopyObjectPermissions.js";
|
|
78
79
|
export { accessListToSummary, draftToSummary, summaryOtherGranteeCount, summaryToShareLevel, } from "./share/accessSummary.js";
|
|
79
80
|
export { isPermissionsNotAvailable } from "./share/accessErrors.js";
|
|
80
81
|
export { useObjectAccessLevel, } from "./share/useObjectAccessLevel.js";
|
|
@@ -43,7 +43,7 @@ export function InsightPickerCore({ backend: backendProp, workspace: workspacePr
|
|
|
43
43
|
// Fetch on mount
|
|
44
44
|
useEffect(() => {
|
|
45
45
|
loadInitialItems();
|
|
46
|
-
//
|
|
46
|
+
// oxlint-disable-next-line react-hooks/exhaustive-deps
|
|
47
47
|
}, []);
|
|
48
48
|
const sortingKey = `${sortBy ?? ""},${sortDirection}`;
|
|
49
49
|
const authorFilterKey = authorFilter.join(",");
|
|
@@ -99,7 +99,7 @@ export const IntlInsightView = withAgGridToken(withMapboxToken(withContexts(func
|
|
|
99
99
|
telemetryProps[key] = true;
|
|
100
100
|
}
|
|
101
101
|
return backend.withTelemetry("InsightView", telemetryProps);
|
|
102
|
-
//
|
|
102
|
+
// oxlint-disable-next-line react-hooks/exhaustive-deps
|
|
103
103
|
}, [currentInsightVisualizationUrl, backend]);
|
|
104
104
|
const handleLoadingChanged = useCallback(({ isLoading }) => {
|
|
105
105
|
setState((oldState) => {
|
|
@@ -232,7 +232,7 @@ export const BaseVisualization = forwardRef(function BaseVisualization(props, re
|
|
|
232
232
|
* the class lifecycle did; the props diff below decides what actually happens. The visElementId is
|
|
233
233
|
* regenerated only when the visualization class really changes, so there is no update loop.
|
|
234
234
|
*/
|
|
235
|
-
//
|
|
235
|
+
// oxlint-disable-next-line react-hooks/exhaustive-deps
|
|
236
236
|
useLayoutEffect(() => {
|
|
237
237
|
const previousProps = prevPropsRef.current;
|
|
238
238
|
prevPropsRef.current = currentProps;
|
package/esm/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddWorkspaceToSubjects.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAA0B,KAAK,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAMrF;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACrE,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,0BAA0B,CAAC;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,2BAA2B,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AddWorkspaceToSubjects.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAA0B,KAAK,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAMrF;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACrE,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,0BAA0B,CAAC;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,+CAA+C,CAAC,EAAE,OAAO,CAAC;CAC7D;AAsCD;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;CAAiD,CAAC"}
|
|
@@ -6,8 +6,8 @@ import { withTelemetry } from "./TelemetryContext.js";
|
|
|
6
6
|
import { AddWorkspace } from "./Workspace/AddWorkspace.js";
|
|
7
7
|
const alignPoints = [{ align: "cc cc" }];
|
|
8
8
|
const noGrantedWorkspaces = [];
|
|
9
|
-
function AddWorkspaceToSubjectsComponent({ ids, subjectType, organizationId, onSuccess, onClose, areMetricPermissionsEnabled, }) {
|
|
10
|
-
return (_jsx(OrganizationIdProvider, { organizationId: organizationId, children: _jsx(Overlay, { alignPoints: alignPoints, isModal: true, positionType: "fixed", className: "gd-user-management-dialog", resizeObserverThreshold: 0.2, children: _jsx(AddWorkspace, { ids: ids, subjectType: subjectType, grantedWorkspaces: noGrantedWorkspaces, enableBackButton: false, onSubmit: onSuccess, onCancel: onClose, onClose: onClose, areMetricPermissionsEnabled: areMetricPermissionsEnabled }) }) }));
|
|
9
|
+
function AddWorkspaceToSubjectsComponent({ ids, subjectType, organizationId, onSuccess, onClose, areMetricPermissionsEnabled, isCreateVisualizationWorkspacePermissionEnabled, }) {
|
|
10
|
+
return (_jsx(OrganizationIdProvider, { organizationId: organizationId, children: _jsx(Overlay, { alignPoints: alignPoints, isModal: true, positionType: "fixed", className: "gd-user-management-dialog", resizeObserverThreshold: 0.2, children: _jsx(AddWorkspace, { ids: ids, subjectType: subjectType, grantedWorkspaces: noGrantedWorkspaces, enableBackButton: false, onSubmit: onSuccess, onCancel: onClose, onClose: onClose, areMetricPermissionsEnabled: areMetricPermissionsEnabled, isCreateVisualizationWorkspacePermissionEnabled: isCreateVisualizationWorkspacePermissionEnabled }) }) }));
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
13
|
* @internal
|
|
@@ -15,7 +15,7 @@ export function EditUserDetails({ user, isBootstrapUser, isAdmin, enableBackButt
|
|
|
15
15
|
if (changeUserMembership) {
|
|
16
16
|
onChange(updatedUser, !isUpdatedAdmin);
|
|
17
17
|
}
|
|
18
|
-
//
|
|
18
|
+
// oxlint-disable-next-line react-hooks/exhaustive-deps
|
|
19
19
|
}, []);
|
|
20
20
|
const backButtonRenderer = useCallback(() => {
|
|
21
21
|
return _jsx(BackButton, { onClick: onCancel, className: "s-user-management-navigate-back" });
|
|
@@ -15,6 +15,7 @@ export interface IUserEditDialogProps extends IWithTelemetryProps {
|
|
|
15
15
|
renderDataSourceIcon?: (dataSource: IGrantedDataSource) => ReactElement;
|
|
16
16
|
isSystemAccountFilteringEnabled?: boolean;
|
|
17
17
|
areMetricPermissionsEnabled?: boolean;
|
|
18
|
+
isCreateVisualizationWorkspacePermissionEnabled?: boolean;
|
|
18
19
|
selectedTab?: UserTabId;
|
|
19
20
|
}
|
|
20
21
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserEditDialog.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/UserEditDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,OAAO,CAAC;AA0B7D,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EACH,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACjB,MAAM,YAAY,CAAC;AAUpB;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,YAAY,CAAC;IACxE,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,WAAW,CAAC,EAAE,SAAS,CAAC;CAC3B;
|
|
1
|
+
{"version":3,"file":"UserEditDialog.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/UserEditDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,OAAO,CAAC;AA0B7D,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EACH,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACjB,MAAM,YAAY,CAAC;AAUpB;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,YAAY,CAAC;IACxE,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,+CAA+C,CAAC,EAAE,OAAO,CAAC;IAC1D,WAAW,CAAC,EAAE,SAAS,CAAC;CAC3B;AAyRD;;GAEG;AACH,eAAO,MAAM,cAAc;;;CAAyC,CAAC"}
|
|
@@ -23,7 +23,7 @@ import { ViewDialog } from "./ViewDialog.js";
|
|
|
23
23
|
import { AddWorkspace } from "./Workspace/AddWorkspace.js";
|
|
24
24
|
import { WorkspaceList } from "./Workspace/WorkspaceList.js";
|
|
25
25
|
const alignPoints = [{ align: "cc cc" }];
|
|
26
|
-
function UserEditDialogComponent({ userId, organizationId, isAdmin, onSuccess, onClose, initialView = "VIEW", changeUserMembership = false, renderDataSourceIcon, isSystemAccountFilteringEnabled = false, areMetricPermissionsEnabled = false, selectedTab = undefined, }) {
|
|
26
|
+
function UserEditDialogComponent({ userId, organizationId, isAdmin, onSuccess, onClose, initialView = "VIEW", changeUserMembership = false, renderDataSourceIcon, isSystemAccountFilteringEnabled = false, areMetricPermissionsEnabled = false, isCreateVisualizationWorkspacePermissionEnabled = false, selectedTab = undefined, }) {
|
|
27
27
|
const intl = useIntl();
|
|
28
28
|
const { dialogMode, setDialogMode } = useUserDialogMode(initialView);
|
|
29
29
|
const { user, isCurrentlyAdmin, onUserDetailsChanged, setIsAdmin, error, isLoading: userIsLoading, } = useUser(userId, organizationId, isAdmin, onSuccess);
|
|
@@ -87,7 +87,7 @@ function UserEditDialogComponent({ userId, organizationId, isAdmin, onSuccess, o
|
|
|
87
87
|
};
|
|
88
88
|
return (_jsxs(OrganizationIdProvider, { organizationId: organizationId, children: [isConfirmDeleteOpened ? (_jsx(DeleteConfirmDialog, { titleText: intl.formatMessage(messages.deleteUserConfirmTitle), bodyText: intl.formatMessage(messages.deleteUserConfirmBody), onConfirm: deleteUser, isProcessing: isDeleteUserProcessing, onCancel: onCloseDeleteDialog })) : null, _jsx(Overlay, { alignPoints: alignPoints, isModal: true, positionType: "fixed", className: dialogOverlayClassNames, resizeObserverThreshold: 0.2, children: _jsx("div", { className: dialogWrapperClassNames, children: isLoading ? (_jsxs(_Fragment, { children: [_jsx(LoadingComponent, { className: "gd-user-management-dialog-loading" }), _jsx(ErrorDialog, { dialogTitle: "", onClose: onClose })] })) : error ? (_jsx(ErrorDialog, { onClose: onClose, dialogTitle: intl.formatMessage(messages.userLoadingErrorTitle), children: _jsx(Message, { type: "error", className: "gd-user-management-dialog-error", children: intl.formatMessage(isUnexpectedResponseError(error) && error.httpStatus === 404
|
|
89
89
|
? messages.userLoadingErrorNotExist
|
|
90
|
-
: messages.userLoadingErrorUnknown) }) })) : (_jsxs(_Fragment, { children: [dialogMode === "VIEW" && (_jsxs(ViewDialog, { dialogTitle: extractUserName(user), isAdmin: isCurrentlyAdmin, isDeleteLinkEnabled: !isBootstrapUser(user), deleteLinkDisabledTooltipTextId: messages.deleteUserDisabledTooltip.id, deleteLinkText: intl.formatMessage(messages.deleteUserLink), onOpenDeleteDialog: onOpenDeleteDialog, onClose: onClose, onEdit: () => setDialogMode(editButtonMode), editButtonText: editButtonText, editButtonIconClassName: editButtonIconClassName, children: [isCurrentlyAdmin ? (_jsx("div", { className: "gd-message information gd-user-management-admin-alert s-admin-message", children: _jsx("div", { className: "gd-message-text", children: intl.formatMessage(messages.adminAlert) }) })) : null, _jsx(Tabs, { selectedTabId: selectedTabId.id, onTabSelect: setSelectedTabId, tabs: tabs, className: "gd-user-management-dialog-tabs s-user-management-tabs" }), selectedTabId.id === userDialogTabsMessages.workspaces.id && (_jsx(WorkspaceList, { workspaces: grantedWorkspaces, subjectType: "user", mode: "VIEW", onDelete: removeGrantedWorkspace, onChange: updateGrantedWorkspace, onClick: handleWorkspaceEdit })), selectedTabId.id === userDialogTabsMessages.userGroups.id && (_jsx(UserGroupsList, { userGroups: grantedUserGroups, mode: "VIEW", onDelete: removeGrantedUserGroup, isBootstrapUser: isBootstrapUser(user), bootstrapUserGroupId: bootstrapUserGroupId })), selectedTabId.id === userDialogTabsMessages.details.id && (_jsx(UserDetailsView, { user: user, isAdmin: isCurrentlyAdmin, isBootstrapUser: isBootstrapUser(user), mode: "VIEW", isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled })), selectedTabId.id === userDialogTabsMessages.dataSources.id && (_jsx(DataSourceList, { dataSources: grantedDataSources, subjectType: "user", mode: "VIEW", onDelete: removeGrantedDataSource, onChange: updateGrantedDataSource, renderDataSourceIcon: renderDataSourceIcon }))] })), dialogMode === "WORKSPACE" && (_jsx(AddWorkspace, { ids: [userId], subjectType: "user", grantedWorkspaces: grantedWorkspaces, enableBackButton: !isOpenedInEditMode, onSubmit: handleWorkspaceChanged, onCancel: isOpenedInEditMode ? onClose : handleWorkspaceCancel, onClose: onClose, editWorkspace: workspaceToEdit, areMetricPermissionsEnabled: areMetricPermissionsEnabled })), dialogMode === "USER_GROUPS" && (_jsx(AddUserGroup, { userIds: [userId], grantedUserGroups: grantedUserGroups, enableBackButton: !isOpenedInEditMode, onSubmit: onUserGroupsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose })), dialogMode === "DATA_SOURCES" && (_jsx(AddDataSource, { ids: [userId], subjectType: "user", grantedDataSources: grantedDataSources, enableBackButton: !isOpenedInEditMode, onSubmit: onDataSourcesChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, renderDataSourceIcon: renderDataSourceIcon })), dialogMode === "DETAIL" && (_jsx(EditUserDetails, { user: user, isAdmin: isCurrentlyAdmin, isBootstrapUser: isBootstrapUser(user), enableBackButton: !isOpenedInEditMode, changeUserMembership: changeUserMembership, isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled, onSubmit: onUserDetailsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, removeAdminGroup: removeAdminGroup }))] })) }) })] }));
|
|
90
|
+
: messages.userLoadingErrorUnknown) }) })) : (_jsxs(_Fragment, { children: [dialogMode === "VIEW" && (_jsxs(ViewDialog, { dialogTitle: extractUserName(user), isAdmin: isCurrentlyAdmin, isDeleteLinkEnabled: !isBootstrapUser(user), deleteLinkDisabledTooltipTextId: messages.deleteUserDisabledTooltip.id, deleteLinkText: intl.formatMessage(messages.deleteUserLink), onOpenDeleteDialog: onOpenDeleteDialog, onClose: onClose, onEdit: () => setDialogMode(editButtonMode), editButtonText: editButtonText, editButtonIconClassName: editButtonIconClassName, children: [isCurrentlyAdmin ? (_jsx("div", { className: "gd-message information gd-user-management-admin-alert s-admin-message", children: _jsx("div", { className: "gd-message-text", children: intl.formatMessage(messages.adminAlert) }) })) : null, _jsx(Tabs, { selectedTabId: selectedTabId.id, onTabSelect: setSelectedTabId, tabs: tabs, className: "gd-user-management-dialog-tabs s-user-management-tabs" }), selectedTabId.id === userDialogTabsMessages.workspaces.id && (_jsx(WorkspaceList, { workspaces: grantedWorkspaces, subjectType: "user", mode: "VIEW", onDelete: removeGrantedWorkspace, onChange: updateGrantedWorkspace, onClick: handleWorkspaceEdit })), selectedTabId.id === userDialogTabsMessages.userGroups.id && (_jsx(UserGroupsList, { userGroups: grantedUserGroups, mode: "VIEW", onDelete: removeGrantedUserGroup, isBootstrapUser: isBootstrapUser(user), bootstrapUserGroupId: bootstrapUserGroupId })), selectedTabId.id === userDialogTabsMessages.details.id && (_jsx(UserDetailsView, { user: user, isAdmin: isCurrentlyAdmin, isBootstrapUser: isBootstrapUser(user), mode: "VIEW", isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled })), selectedTabId.id === userDialogTabsMessages.dataSources.id && (_jsx(DataSourceList, { dataSources: grantedDataSources, subjectType: "user", mode: "VIEW", onDelete: removeGrantedDataSource, onChange: updateGrantedDataSource, renderDataSourceIcon: renderDataSourceIcon }))] })), dialogMode === "WORKSPACE" && (_jsx(AddWorkspace, { ids: [userId], subjectType: "user", grantedWorkspaces: grantedWorkspaces, enableBackButton: !isOpenedInEditMode, onSubmit: handleWorkspaceChanged, onCancel: isOpenedInEditMode ? onClose : handleWorkspaceCancel, onClose: onClose, editWorkspace: workspaceToEdit, areMetricPermissionsEnabled: areMetricPermissionsEnabled, isCreateVisualizationWorkspacePermissionEnabled: isCreateVisualizationWorkspacePermissionEnabled })), dialogMode === "USER_GROUPS" && (_jsx(AddUserGroup, { userIds: [userId], grantedUserGroups: grantedUserGroups, enableBackButton: !isOpenedInEditMode, onSubmit: onUserGroupsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose })), dialogMode === "DATA_SOURCES" && (_jsx(AddDataSource, { ids: [userId], subjectType: "user", grantedDataSources: grantedDataSources, enableBackButton: !isOpenedInEditMode, onSubmit: onDataSourcesChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, renderDataSourceIcon: renderDataSourceIcon })), dialogMode === "DETAIL" && (_jsx(EditUserDetails, { user: user, isAdmin: isCurrentlyAdmin, isBootstrapUser: isBootstrapUser(user), enableBackButton: !isOpenedInEditMode, changeUserMembership: changeUserMembership, isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled, onSubmit: onUserDetailsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, removeAdminGroup: removeAdminGroup }))] })) }) })] }));
|
|
91
91
|
}
|
|
92
92
|
/**
|
|
93
93
|
* @internal
|
|
@@ -13,6 +13,7 @@ export interface IUserGroupEditDialogProps extends IWithTelemetryProps {
|
|
|
13
13
|
onClose: () => void;
|
|
14
14
|
renderDataSourceIcon?: (dataSource: IGrantedDataSource) => ReactElement;
|
|
15
15
|
areMetricPermissionsEnabled?: boolean;
|
|
16
|
+
isCreateVisualizationWorkspacePermissionEnabled?: boolean;
|
|
16
17
|
}
|
|
17
18
|
/**
|
|
18
19
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserGroupEditDialog.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,OAAO,CAAC;AA0B7D,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,KAAK,kBAAkB,EAA0B,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAU3G;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,YAAY,CAAC;IACxE,2BAA2B,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"UserGroupEditDialog.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,OAAO,CAAC;AA0B7D,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,KAAK,kBAAkB,EAA0B,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAU3G;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,YAAY,CAAC;IACxE,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,+CAA+C,CAAC,EAAE,OAAO,CAAC;CAC7D;AAmRD;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;CAA8C,CAAC"}
|
|
@@ -23,7 +23,7 @@ import { ViewDialog } from "./ViewDialog.js";
|
|
|
23
23
|
import { AddWorkspace } from "./Workspace/AddWorkspace.js";
|
|
24
24
|
import { WorkspaceList } from "./Workspace/WorkspaceList.js";
|
|
25
25
|
const alignPoints = [{ align: "cc cc" }];
|
|
26
|
-
function UserGroupEditDialogComponent({ userGroupId, organizationId, isAdmin, onSuccess, onClose, initialView = "VIEW", renderDataSourceIcon, areMetricPermissionsEnabled = false, }) {
|
|
26
|
+
function UserGroupEditDialogComponent({ userGroupId, organizationId, isAdmin, onSuccess, onClose, initialView = "VIEW", renderDataSourceIcon, areMetricPermissionsEnabled = false, isCreateVisualizationWorkspacePermissionEnabled = false, }) {
|
|
27
27
|
const intl = useIntl();
|
|
28
28
|
const { dialogMode, setDialogMode } = useUserGroupDialogMode(initialView);
|
|
29
29
|
const { userGroup, onUserGroupDetailsChanged, error, isLoading: userGroupIsLoading, } = useUserGroup(userGroupId, organizationId, onSuccess);
|
|
@@ -87,7 +87,7 @@ function UserGroupEditDialogComponent({ userGroupId, organizationId, isAdmin, on
|
|
|
87
87
|
? messages.userGroupLoadingErrorNotExist
|
|
88
88
|
: messages.userGroupLoadingErrorUnknown) }) })) : (_jsxs(_Fragment, { children: [dialogMode === "VIEW" && (_jsxs(ViewDialog, { dialogTitle: extractUserGroupName(userGroup), isAdmin: isAdmin, isDeleteLinkEnabled: !isBootstrapUserGroup(userGroup) && grantedUsers?.length === 0, deleteLinkDisabledTooltipTextId: isBootstrapUserGroup(userGroup)
|
|
89
89
|
? messages.deleteAdminUserGroupTooltip.id
|
|
90
|
-
: messages.deleteNonEmptyUserGroupTooltip.id, deleteLinkText: intl.formatMessage(messages.deleteUserGroupLink), onOpenDeleteDialog: onOpenDeleteDialog, onClose: onClose, onEdit: () => setDialogMode(editButtonMode), editButtonText: editButtonText, editButtonIconClassName: editButtonIconClassName, children: [isAdmin ? (_jsx("div", { className: "gd-message information gd-user-management-admin-alert s-admin-message", children: _jsx("div", { className: "gd-message-text", children: intl.formatMessage(messages.adminGroupAlert) }) })) : null, _jsx(Tabs, { selectedTabId: selectedTabId.id, onTabSelect: setSelectedTabId, tabs: tabs, className: "gd-user-management-dialog-tabs s-user-management-tabs" }), selectedTabId.id === userGroupDialogTabsMessages.workspaces.id && (_jsx(WorkspaceList, { workspaces: grantedWorkspaces, subjectType: "userGroup", mode: "VIEW", onDelete: removeGrantedWorkspace, onChange: updateGrantedWorkspace, onClick: handleWorkspaceEdit })), selectedTabId.id === userGroupDialogTabsMessages.dataSources.id && (_jsx(DataSourceList, { dataSources: grantedDataSources, subjectType: "userGroup", mode: "VIEW", onDelete: removeGrantedDataSource, onChange: updateGrantedDataSource, renderDataSourceIcon: renderDataSourceIcon })), selectedTabId.id === userGroupDialogTabsMessages.users.id && (_jsx(UsersList, { users: grantedUsers, mode: "VIEW", onDelete: removeGrantedUsers, isBootstrapUserGroup: isBootstrapUserGroup(userGroup), bootstrapUserId: bootstrapUserId })), selectedTabId.id === userGroupDialogTabsMessages.details.id && (_jsx(UserGroupDetailsView, { userGroup: userGroup, mode: "VIEW" }))] })), dialogMode === "WORKSPACE" && (_jsx(AddWorkspace, { ids: [userGroupId], subjectType: "userGroup", grantedWorkspaces: grantedWorkspaces, enableBackButton: !isOpenedInEditMode, onSubmit: handleWorkspaceChanged, onCancel: isOpenedInEditMode ? onClose : handleWorkspaceCancel, onClose: onClose, editWorkspace: workspaceToEdit, areMetricPermissionsEnabled: areMetricPermissionsEnabled })), dialogMode === "USERS" && (_jsx(AddUser, { userGroupIds: [userGroupId], grantedUsers: grantedUsers, enableBackButton: !isOpenedInEditMode, onSubmit: onUsersChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose })), dialogMode === "DATA_SOURCES" && (_jsx(AddDataSource, { ids: [userGroupId], subjectType: "userGroup", grantedDataSources: grantedDataSources, enableBackButton: !isOpenedInEditMode, onSubmit: onDataSourcesChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, renderDataSourceIcon: renderDataSourceIcon })), dialogMode === "DETAIL" && (_jsx(EditUserGroupDetails, { userGroup: userGroup, enableBackButton: !isOpenedInEditMode, onSubmit: onUserGroupDetailsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose }))] })) }) })] }));
|
|
90
|
+
: messages.deleteNonEmptyUserGroupTooltip.id, deleteLinkText: intl.formatMessage(messages.deleteUserGroupLink), onOpenDeleteDialog: onOpenDeleteDialog, onClose: onClose, onEdit: () => setDialogMode(editButtonMode), editButtonText: editButtonText, editButtonIconClassName: editButtonIconClassName, children: [isAdmin ? (_jsx("div", { className: "gd-message information gd-user-management-admin-alert s-admin-message", children: _jsx("div", { className: "gd-message-text", children: intl.formatMessage(messages.adminGroupAlert) }) })) : null, _jsx(Tabs, { selectedTabId: selectedTabId.id, onTabSelect: setSelectedTabId, tabs: tabs, className: "gd-user-management-dialog-tabs s-user-management-tabs" }), selectedTabId.id === userGroupDialogTabsMessages.workspaces.id && (_jsx(WorkspaceList, { workspaces: grantedWorkspaces, subjectType: "userGroup", mode: "VIEW", onDelete: removeGrantedWorkspace, onChange: updateGrantedWorkspace, onClick: handleWorkspaceEdit })), selectedTabId.id === userGroupDialogTabsMessages.dataSources.id && (_jsx(DataSourceList, { dataSources: grantedDataSources, subjectType: "userGroup", mode: "VIEW", onDelete: removeGrantedDataSource, onChange: updateGrantedDataSource, renderDataSourceIcon: renderDataSourceIcon })), selectedTabId.id === userGroupDialogTabsMessages.users.id && (_jsx(UsersList, { users: grantedUsers, mode: "VIEW", onDelete: removeGrantedUsers, isBootstrapUserGroup: isBootstrapUserGroup(userGroup), bootstrapUserId: bootstrapUserId })), selectedTabId.id === userGroupDialogTabsMessages.details.id && (_jsx(UserGroupDetailsView, { userGroup: userGroup, mode: "VIEW" }))] })), dialogMode === "WORKSPACE" && (_jsx(AddWorkspace, { ids: [userGroupId], subjectType: "userGroup", grantedWorkspaces: grantedWorkspaces, enableBackButton: !isOpenedInEditMode, onSubmit: handleWorkspaceChanged, onCancel: isOpenedInEditMode ? onClose : handleWorkspaceCancel, onClose: onClose, editWorkspace: workspaceToEdit, areMetricPermissionsEnabled: areMetricPermissionsEnabled, isCreateVisualizationWorkspacePermissionEnabled: isCreateVisualizationWorkspacePermissionEnabled })), dialogMode === "USERS" && (_jsx(AddUser, { userGroupIds: [userGroupId], grantedUsers: grantedUsers, enableBackButton: !isOpenedInEditMode, onSubmit: onUsersChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose })), dialogMode === "DATA_SOURCES" && (_jsx(AddDataSource, { ids: [userGroupId], subjectType: "userGroup", grantedDataSources: grantedDataSources, enableBackButton: !isOpenedInEditMode, onSubmit: onDataSourcesChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, renderDataSourceIcon: renderDataSourceIcon })), dialogMode === "DETAIL" && (_jsx(EditUserGroupDetails, { userGroup: userGroup, enableBackButton: !isOpenedInEditMode, onSubmit: onUserGroupDetailsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose }))] })) }) })] }));
|
|
91
91
|
}
|
|
92
92
|
/**
|
|
93
93
|
* @internal
|
|
@@ -9,6 +9,7 @@ export interface IAddWorkspaceProps {
|
|
|
9
9
|
onClose: () => void;
|
|
10
10
|
editWorkspace?: IGrantedWorkspace;
|
|
11
11
|
areMetricPermissionsEnabled?: boolean;
|
|
12
|
+
isCreateVisualizationWorkspacePermissionEnabled?: boolean;
|
|
12
13
|
}
|
|
13
|
-
export declare function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackButton, onSubmit, onCancel, onClose, editWorkspace, areMetricPermissionsEnabled, }: IAddWorkspaceProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackButton, onSubmit, onCancel, onClose, editWorkspace, areMetricPermissionsEnabled, isCreateVisualizationWorkspacePermissionEnabled, }: IAddWorkspaceProps): import("react/jsx-runtime").JSX.Element;
|
|
14
15
|
//# sourceMappingURL=AddWorkspace.d.ts.map
|
package/esm/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddWorkspace.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAUtF,MAAM,WAAW,kBAAkB;IAC/B,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,0BAA0B,CAAC;IACxC,iBAAiB,EAAE,iBAAiB,EAAE,GAAG,SAAS,CAAC;IACnD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IACpD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,2BAA2B,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AddWorkspace.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAUtF,MAAM,WAAW,kBAAkB;IAC/B,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,0BAA0B,CAAC;IACxC,iBAAiB,EAAE,iBAAiB,EAAE,GAAG,SAAS,CAAC;IACnD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IACpD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,+CAA+C,CAAC,EAAE,OAAO,CAAC;CAC7D;AAED,wBAAgB,YAAY,CAAC,EACzB,GAAG,EACH,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,aAAa,EACb,2BAA2B,EAC3B,+CAA+C,GAClD,EAAE,kBAAkB,2CAuEpB"}
|
|
@@ -8,7 +8,7 @@ import { AddSingleWorkspaceSelect } from "./AddSingleWorkspaceSelect.js";
|
|
|
8
8
|
import { useAddWorkspace } from "./useAddWorkspace.js";
|
|
9
9
|
import { GranularPermissions } from "./WorkspaceItem/GranularPermissions.js";
|
|
10
10
|
import { areRedundantPermissionsPresent, areWorkspacePermissionsEqual, } from "./WorkspaceItem/granularPermissionUtils.js";
|
|
11
|
-
export function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackButton, onSubmit, onCancel, onClose, editWorkspace, areMetricPermissionsEnabled, }) {
|
|
11
|
+
export function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackButton, onSubmit, onCancel, onClose, editWorkspace, areMetricPermissionsEnabled, isCreateVisualizationWorkspacePermissionEnabled, }) {
|
|
12
12
|
const intl = useIntl();
|
|
13
13
|
const { addedWorkspaces, isProcessing, onAdd, onChange, onOverwriteSelect } = useAddWorkspace(ids, subjectType, onSubmit, onCancel, editWorkspace);
|
|
14
14
|
const isGranularPermissionsChanged = useMemo(() => {
|
|
@@ -25,5 +25,5 @@ export function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackBu
|
|
|
25
25
|
id: "userManagement.workspace.granularPermission.help",
|
|
26
26
|
}), href: "https://www.gooddata.com/docs/cloud/manage-organization/manage-permissions/set-permissions-for-workspace/", iconClass: "gd-icon-circle-question" }) }));
|
|
27
27
|
}, [intl]);
|
|
28
|
-
return (_jsxs(ConfirmDialogBase, { className: "gd-share-dialog gd-share-dialog-add-workspace s-user-management-add-workspace", displayCloseButton: true, isPositive: true, isSubmitDisabled: addedWorkspaces.length === 0 || isProcessing || !isGranularPermissionsChanged, showProgressIndicator: isProcessing, headline: intl.formatMessage(editWorkspace ? messages.editWorkspaceDialogTitle : messages.addWorkspaceDialogTitle), cancelButtonText: intl.formatMessage(messages.addWorkspaceDialogCloseButton), submitButtonText: intl.formatMessage(messages.addWorkspaceDialogSaveButton), onCancel: onCancel, onSubmit: onAdd, onClose: onClose, headerLeftButtonRenderer: enableBackButton ? backButtonRenderer : undefined, footerLeftRenderer: leftFooterRenderer, children: [_jsx(AddSingleWorkspaceSelect, { addedWorkspace: addedWorkspaces[0], grantedWorkspaces: grantedWorkspaces, onSelectWorkspace: onOverwriteSelect, mode: editWorkspace ? "VIEW" : "EDIT" }), _jsx(GranularPermissions, { workspace: addedWorkspaces[0], onChange: onChange, showRedundancyWarningMessage: showRedundancyWarningMessage, areMetricPermissionsEnabled: areMetricPermissionsEnabled })] }));
|
|
28
|
+
return (_jsxs(ConfirmDialogBase, { className: "gd-share-dialog gd-share-dialog-add-workspace s-user-management-add-workspace", displayCloseButton: true, isPositive: true, isSubmitDisabled: addedWorkspaces.length === 0 || isProcessing || !isGranularPermissionsChanged, showProgressIndicator: isProcessing, headline: intl.formatMessage(editWorkspace ? messages.editWorkspaceDialogTitle : messages.addWorkspaceDialogTitle), cancelButtonText: intl.formatMessage(messages.addWorkspaceDialogCloseButton), submitButtonText: intl.formatMessage(messages.addWorkspaceDialogSaveButton), onCancel: onCancel, onSubmit: onAdd, onClose: onClose, headerLeftButtonRenderer: enableBackButton ? backButtonRenderer : undefined, footerLeftRenderer: leftFooterRenderer, children: [_jsx(AddSingleWorkspaceSelect, { addedWorkspace: addedWorkspaces[0], grantedWorkspaces: grantedWorkspaces, onSelectWorkspace: onOverwriteSelect, mode: editWorkspace ? "VIEW" : "EDIT" }), _jsx(GranularPermissions, { workspace: addedWorkspaces[0], onChange: onChange, showRedundancyWarningMessage: showRedundancyWarningMessage, areMetricPermissionsEnabled: areMetricPermissionsEnabled, isCreateVisualizationWorkspacePermissionEnabled: isCreateVisualizationWorkspacePermissionEnabled })] }));
|
|
29
29
|
}
|
|
@@ -4,7 +4,8 @@ interface IGranularPermissionsProps {
|
|
|
4
4
|
onChange: (workspace: IGrantedWorkspace) => void;
|
|
5
5
|
showRedundancyWarningMessage: boolean;
|
|
6
6
|
areMetricPermissionsEnabled?: boolean;
|
|
7
|
+
isCreateVisualizationWorkspacePermissionEnabled?: boolean;
|
|
7
8
|
}
|
|
8
|
-
export declare function GranularPermissions({ workspace, onChange, showRedundancyWarningMessage, areMetricPermissionsEnabled, }: IGranularPermissionsProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export declare function GranularPermissions({ workspace, onChange, showRedundancyWarningMessage, areMetricPermissionsEnabled, isCreateVisualizationWorkspacePermissionEnabled, }: IGranularPermissionsProps): import("react/jsx-runtime").JSX.Element;
|
|
9
10
|
export {};
|
|
10
11
|
//# sourceMappingURL=GranularPermissions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GranularPermissions.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.tsx"],"names":[],"mappings":"AAQA,OAAO,EACH,KAAK,iBAAiB,EAIzB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"GranularPermissions.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.tsx"],"names":[],"mappings":"AAQA,OAAO,EACH,KAAK,iBAAiB,EAIzB,MAAM,gBAAgB,CAAC;AA2BxB,UAAU,yBAAyB;IAC/B,SAAS,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACzC,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,4BAA4B,EAAE,OAAO,CAAC;IACtC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,+CAA+C,CAAC,EAAE,OAAO,CAAC;CAC7D;AAED,wBAAgB,mBAAmB,CAAC,EAChC,SAAS,EACT,QAAQ,EACR,4BAA4B,EAC5B,2BAAmC,EACnC,+CAAuD,GAC1D,EAAE,yBAAyB,2CA6I3B"}
|
|
@@ -14,16 +14,16 @@ const granularPermissions = [
|
|
|
14
14
|
{ id: "EXPORT_PDF", enabled: true, group: true },
|
|
15
15
|
{ id: "EXPORT_TABULAR", enabled: true, group: true },
|
|
16
16
|
{ id: "CREATE_METRIC", enabled: true },
|
|
17
|
+
{ id: "CREATE_VISUALIZATION", enabled: true },
|
|
17
18
|
{ id: "CREATE_FILTER_VIEW", enabled: true },
|
|
18
19
|
];
|
|
19
|
-
export function GranularPermissions({ workspace, onChange, showRedundancyWarningMessage, areMetricPermissionsEnabled = false, }) {
|
|
20
|
+
export function GranularPermissions({ workspace, onChange, showRedundancyWarningMessage, areMetricPermissionsEnabled = false, isCreateVisualizationWorkspacePermissionEnabled = false, }) {
|
|
20
21
|
const intl = useIntl();
|
|
21
22
|
const { permissions: selectedPermissions = [], isHierarchical = false } = workspace ?? {};
|
|
22
23
|
const selectedWorkspacePermission = getWorkspacePermission(selectedPermissions);
|
|
23
24
|
const selectedGranularPermissions = getGranularPermissions(selectedPermissions);
|
|
24
|
-
const granularItems = areMetricPermissionsEnabled
|
|
25
|
-
|
|
26
|
-
: granularPermissions.filter(({ id }) => id !== "CREATE_METRIC");
|
|
25
|
+
const granularItems = granularPermissions.filter(({ id }) => (id !== "CREATE_METRIC" || areMetricPermissionsEnabled) &&
|
|
26
|
+
(id !== "CREATE_VISUALIZATION" || isCreateVisualizationWorkspacePermissionEnabled));
|
|
27
27
|
const handleChange = useCallback((permissions, isHierarchical) => {
|
|
28
28
|
const sanitizedPermissions = removeRedundantPermissions(permissions);
|
|
29
29
|
onChange({ ...workspace, permissions: sanitizedPermissions, isHierarchical });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"granularPermissionUtils.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/granularPermissionUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAI7G,eAAO,MAAM,oBAAoB,EAAE,oBAAoD,CAAC;AAExF,eAAO,MAAM,iBAAiB,EAAE,oBAA0D,CAAC;AAE3F;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,wBAClB,mBAAmB,KACzC,
|
|
1
|
+
{"version":3,"file":"granularPermissionUtils.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/granularPermissionUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAI7G,eAAO,MAAM,oBAAoB,EAAE,oBAAoD,CAAC;AAExF,eAAO,MAAM,iBAAiB,EAAE,oBAA0D,CAAC;AAE3F;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,wBAClB,mBAAmB,KACzC,oBAmBF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,gBAAiB,oBAAoB,KAAG,mBAQ1E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,gBAAiB,oBAAoB,KAAG,oBAW1E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,sBACf,mBAAmB,eACzB,oBAAoB,WACxB,OAAO,KACjB,oBA2BF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,eACzB,mBAAmB,+BACF,oBAAoB,YAOpD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,eACjB,mBAAmB,+BACF,mBAAmB,+BACnB,oBAAoB,YAUpD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,gBAAiB,oBAAoB,KAAG,oBAwB9E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,eACzB,iBAAiB,cACjB,iBAAiB,YAUhC,CAAC;AAoCF;;GAEG;AACH,eAAO,MAAM,gCAAgC,gBAC5B,oBAAoB,QAC3B,SAAS,KAChB,MAmBF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,gBAAiB,oBAAoB,KAAG,OAGlF,CAAC"}
|
|
@@ -15,7 +15,7 @@ export const getImplicitGranularPermissions = (workspacePermission) => {
|
|
|
15
15
|
case "VIEW":
|
|
16
16
|
return [];
|
|
17
17
|
case "ANALYZE":
|
|
18
|
-
return ["CREATE_FILTER_VIEW"];
|
|
18
|
+
return ["CREATE_VISUALIZATION", "CREATE_FILTER_VIEW"];
|
|
19
19
|
case "MANAGE":
|
|
20
20
|
return [
|
|
21
21
|
"EXPORT",
|
|
@@ -23,6 +23,7 @@ export const getImplicitGranularPermissions = (workspacePermission) => {
|
|
|
23
23
|
"EXPORT_TABULAR",
|
|
24
24
|
"CREATE_AUTOMATION",
|
|
25
25
|
"CREATE_METRIC",
|
|
26
|
+
"CREATE_VISUALIZATION",
|
|
26
27
|
"CREATE_FILTER_VIEW",
|
|
27
28
|
];
|
|
28
29
|
default:
|
|
@@ -105,9 +106,10 @@ export const isExportPermissionIndefinite = (permission, selectedGranularPermiss
|
|
|
105
106
|
*/
|
|
106
107
|
export const isPermissionDisabled = (permission, selectedWorkspacePermission, selectedGranularPermissions) => {
|
|
107
108
|
const isManageWithNoAi = selectedWorkspacePermission === "MANAGE" && permission !== "USE_AI_ASSISTANT";
|
|
108
|
-
const
|
|
109
|
+
const isAnalyzeWithImpliedPermission = selectedWorkspacePermission === "ANALYZE" &&
|
|
110
|
+
(permission === "CREATE_FILTER_VIEW" || permission === "CREATE_VISUALIZATION");
|
|
109
111
|
const isExportSubPermission = selectedGranularPermissions.includes("EXPORT") && exportSubPermissions.includes(permission);
|
|
110
|
-
return isManageWithNoAi ||
|
|
112
|
+
return isManageWithNoAi || isAnalyzeWithImpliedPermission || isExportSubPermission;
|
|
111
113
|
};
|
|
112
114
|
/**
|
|
113
115
|
* Before persisting permissions, we want to remove implicit permissions as they are not needed on BE.
|
|
@@ -127,6 +129,7 @@ export const removeRedundantPermissions = (permissions) => {
|
|
|
127
129
|
if (permissions.includes("ANALYZE")) {
|
|
128
130
|
sanitizedPermissions = sanitizedPermissions.filter((p) => p !== "VIEW");
|
|
129
131
|
sanitizedPermissions = sanitizedPermissions.filter((p) => p !== "CREATE_FILTER_VIEW");
|
|
132
|
+
sanitizedPermissions = sanitizedPermissions.filter((p) => p !== "CREATE_VISUALIZATION");
|
|
130
133
|
}
|
|
131
134
|
if (permissions.includes("EXPORT")) {
|
|
132
135
|
sanitizedPermissions = sanitizedPermissions.filter((p) => p !== "EXPORT_PDF");
|
|
@@ -157,6 +160,7 @@ const reorderPermissions = (permissions) => {
|
|
|
157
160
|
"CREATE_FILTER_VIEW",
|
|
158
161
|
"CREATE_AUTOMATION",
|
|
159
162
|
"CREATE_METRIC",
|
|
163
|
+
"CREATE_VISUALIZATION",
|
|
160
164
|
"EXPORT",
|
|
161
165
|
"EXPORT_PDF",
|
|
162
166
|
"EXPORT_TABULAR",
|
package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/locales.d.ts
CHANGED
|
@@ -64,6 +64,9 @@ export declare const workspaceGranularPermissionMessages: {
|
|
|
64
64
|
CREATE_METRIC: {
|
|
65
65
|
id: string;
|
|
66
66
|
};
|
|
67
|
+
CREATE_VISUALIZATION: {
|
|
68
|
+
id: string;
|
|
69
|
+
};
|
|
67
70
|
USE_AI_ASSISTANT: {
|
|
68
71
|
id: string;
|
|
69
72
|
};
|
|
@@ -111,6 +114,9 @@ export declare const granularTooltipMessages: {
|
|
|
111
114
|
CREATE_METRIC: {
|
|
112
115
|
id: string;
|
|
113
116
|
};
|
|
117
|
+
CREATE_VISUALIZATION: {
|
|
118
|
+
id: string;
|
|
119
|
+
};
|
|
114
120
|
USE_AI_ASSISTANT: {
|
|
115
121
|
id: string;
|
|
116
122
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/locales.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAErF,eAAO,MAAM,8BAA8B;;QAC5B,EAAE;;;QACD,EAAE;;CAChB,CAAC;AAEH,eAAO,MAAM,2BAA2B;;QAC5B,EAAE;;;QACa,EAAE;;;QACN,EAAE;;;QACa,EAAE;;;QACzB,EAAE;;;QACS,EAAE;;;QACd,EAAE;;;QACF,EAAE;;CACd,CAAC;AAEH,eAAO,MAAM,kBAAkB,eAAgB,mBAAmB;;CAmBjE,CAAC;AAEF,eAAO,MAAM,mCAAmC;;QAClC,EAAE;;;QACD,EAAE;;;QACL,EAAE;;;QACA,EAAE;;;QACM,EAAE;;;QACN,EAAE;;;QACM,EAAE;;;QACH,EAAE;;;QACN,EAAE;;;
|
|
1
|
+
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/locales.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAErF,eAAO,MAAM,8BAA8B;;QAC5B,EAAE;;;QACD,EAAE;;CAChB,CAAC;AAEH,eAAO,MAAM,2BAA2B;;QAC5B,EAAE;;;QACa,EAAE;;;QACN,EAAE;;;QACa,EAAE;;;QACzB,EAAE;;;QACS,EAAE;;;QACd,EAAE;;;QACF,EAAE;;CACd,CAAC;AAEH,eAAO,MAAM,kBAAkB,eAAgB,mBAAmB;;CAmBjE,CAAC;AAEF,eAAO,MAAM,mCAAmC;;QAClC,EAAE;;;QACD,EAAE;;;QACL,EAAE;;;QACA,EAAE;;;QACM,EAAE;;;QACN,EAAE;;;QACM,EAAE;;;QACH,EAAE;;;QACN,EAAE;;;QACK,EAAE;;;QACN,EAAE;;;QACH,EAAE;;;QACC,EAAE;;;QACH,EAAE;;;QACH,EAAE;;;QACZ,EAAE;;;QACL,EAAE;;;QACa,EAAE;;;QACE,EAAE;;CAC9B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;QACtB,EAAE;;;QACM,EAAE;;;QACN,EAAE;;;QACM,EAAE;;;QACH,EAAE;;;QACN,EAAE;;;QACK,EAAE;;;QACN,EAAE;;CACxB,CAAC;AAEH,eAAO,MAAM,0BAA0B,eAAgB,mBAAmB;;CA2BzE,CAAC;AAEF,eAAO,MAAM,gCAAgC,gBAAiB,oBAAoB;;CAQjF,CAAC;AAEF,eAAO,MAAM,uCAAuC,eAAgB,mBAAmB;;CAWtF,CAAC"}
|
package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/locales.js
CHANGED
|
@@ -44,6 +44,7 @@ export const workspaceGranularPermissionMessages = defineMessages({
|
|
|
44
44
|
CREATE_FILTER_VIEW: { id: "userManagement.workspace.permission.createFilterView" },
|
|
45
45
|
CREATE_AUTOMATION: { id: "userManagement.workspace.permission.createAutomation" },
|
|
46
46
|
CREATE_METRIC: { id: "userManagement.workspace.permission.createMetric" },
|
|
47
|
+
CREATE_VISUALIZATION: { id: "userManagement.workspace.permission.createVisualization" },
|
|
47
48
|
USE_AI_ASSISTANT: { id: "userManagement.workspace.permission.useAiAssistant" },
|
|
48
49
|
viewDescription: { id: "userManagement.workspace.granularPermission.view.description" },
|
|
49
50
|
analyzeDescription: { id: "userManagement.workspace.granularPermission.analyze.description" },
|
|
@@ -61,6 +62,7 @@ export const granularTooltipMessages = defineMessages({
|
|
|
61
62
|
CREATE_FILTER_VIEW: { id: "userManagement.workspace.permission.createFilterView.tooltip" },
|
|
62
63
|
CREATE_AUTOMATION: { id: "userManagement.workspace.permission.createAutomation.tooltip" },
|
|
63
64
|
CREATE_METRIC: { id: "userManagement.workspace.permission.createMetric.tooltip" },
|
|
65
|
+
CREATE_VISUALIZATION: { id: "userManagement.workspace.permission.createVisualization.tooltip" },
|
|
64
66
|
USE_AI_ASSISTANT: { id: "userManagement.workspace.permission.useAiAssistant.tooltip" },
|
|
65
67
|
});
|
|
66
68
|
export const getGranularPermissionTitle = (permission) => {
|
|
@@ -83,6 +85,8 @@ export const getGranularPermissionTitle = (permission) => {
|
|
|
83
85
|
return workspaceGranularPermissionMessages.CREATE_AUTOMATION;
|
|
84
86
|
case "CREATE_METRIC":
|
|
85
87
|
return workspaceGranularPermissionMessages.CREATE_METRIC;
|
|
88
|
+
case "CREATE_VISUALIZATION":
|
|
89
|
+
return workspaceGranularPermissionMessages.CREATE_VISUALIZATION;
|
|
86
90
|
case "USE_AI_ASSISTANT":
|
|
87
91
|
return workspaceGranularPermissionMessages.USE_AI_ASSISTANT;
|
|
88
92
|
default:
|
|
@@ -170,7 +170,7 @@ export function useInsightPagedList({ backend, workspaceId, author, tabsIds, tag
|
|
|
170
170
|
setCurrentPage(nextPage);
|
|
171
171
|
void fetchItems({ page: nextPage, search, tabId: selectedTabId });
|
|
172
172
|
}, [hasNextPage, isNextPageLoading, isLoading, currentPage, search, selectedTabId, fetchItems]);
|
|
173
|
-
//
|
|
173
|
+
// oxlint-disable-next-line react-hooks/exhaustive-deps
|
|
174
174
|
const onSearch = useCallback(debounce((searchString) => {
|
|
175
175
|
setCurrentPage(0);
|
|
176
176
|
setSearch(searchString);
|
|
@@ -2527,11 +2527,47 @@ export declare const en_US: {
|
|
|
2527
2527
|
text: string;
|
|
2528
2528
|
crowdinContext: string;
|
|
2529
2529
|
};
|
|
2530
|
-
"objectShare.
|
|
2530
|
+
"objectShare.adminNote.prefix": {
|
|
2531
2531
|
text: string;
|
|
2532
2532
|
crowdinContext: string;
|
|
2533
2533
|
};
|
|
2534
|
-
"objectShare.
|
|
2534
|
+
"objectShare.title.attribute": {
|
|
2535
|
+
text: string;
|
|
2536
|
+
crowdinContext: string;
|
|
2537
|
+
};
|
|
2538
|
+
"objectShare.title.fact": {
|
|
2539
|
+
text: string;
|
|
2540
|
+
crowdinContext: string;
|
|
2541
|
+
};
|
|
2542
|
+
"objectShare.title.label": {
|
|
2543
|
+
text: string;
|
|
2544
|
+
crowdinContext: string;
|
|
2545
|
+
};
|
|
2546
|
+
"objectShare.title.measure": {
|
|
2547
|
+
text: string;
|
|
2548
|
+
crowdinContext: string;
|
|
2549
|
+
};
|
|
2550
|
+
"objectShare.title.computedAttribute": {
|
|
2551
|
+
text: string;
|
|
2552
|
+
crowdinContext: string;
|
|
2553
|
+
};
|
|
2554
|
+
"objectShare.title.insight": {
|
|
2555
|
+
text: string;
|
|
2556
|
+
crowdinContext: string;
|
|
2557
|
+
};
|
|
2558
|
+
"objectShare.title.other": {
|
|
2559
|
+
text: string;
|
|
2560
|
+
crowdinContext: string;
|
|
2561
|
+
};
|
|
2562
|
+
"objectShare.adminNote": {
|
|
2563
|
+
text: string;
|
|
2564
|
+
crowdinContext: string;
|
|
2565
|
+
};
|
|
2566
|
+
"objectShare.emptyGrantees": {
|
|
2567
|
+
text: string;
|
|
2568
|
+
crowdinContext: string;
|
|
2569
|
+
};
|
|
2570
|
+
"objectShare.emptyGrantees.hint": {
|
|
2535
2571
|
text: string;
|
|
2536
2572
|
crowdinContext: string;
|
|
2537
2573
|
};
|