@gooddata/sdk-ui-ext 11.63.0-alpha.2 → 11.63.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/esm/internal/components/dialogs/userManagementDialogs/Details/EditUserDetails.d.ts +8 -2
- package/esm/internal/components/dialogs/userManagementDialogs/Details/EditUserDetails.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Details/EditUserDetails.js +3 -3
- package/esm/internal/components/dialogs/userManagementDialogs/Details/UserDetailsView.d.ts +7 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Details/UserDetailsView.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Details/UserDetailsView.js +11 -4
- package/esm/internal/components/dialogs/userManagementDialogs/Details/UserLanguagesSection.d.ts +11 -0
- package/esm/internal/components/dialogs/userManagementDialogs/Details/UserLanguagesSection.d.ts.map +1 -0
- package/esm/internal/components/dialogs/userManagementDialogs/Details/UserLanguagesSection.js +76 -0
- package/esm/internal/components/dialogs/userManagementDialogs/Details/detailsHooks.d.ts +4 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Details/detailsHooks.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/Details/detailsHooks.js +24 -4
- package/esm/internal/components/dialogs/userManagementDialogs/Details/userLanguages.d.ts +11 -0
- package/esm/internal/components/dialogs/userManagementDialogs/Details/userLanguages.d.ts.map +1 -0
- package/esm/internal/components/dialogs/userManagementDialogs/Details/userLanguages.js +50 -0
- 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 +14 -4
- package/esm/internal/components/dialogs/userManagementDialogs/dialogHooks.d.ts +11 -0
- package/esm/internal/components/dialogs/userManagementDialogs/dialogHooks.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/dialogHooks.js +37 -0
- package/esm/internal/components/dialogs/userManagementDialogs/locales.d.ts +36 -0
- package/esm/internal/components/dialogs/userManagementDialogs/locales.d.ts.map +1 -1
- package/esm/internal/components/dialogs/userManagementDialogs/locales.js +12 -0
- package/esm/sdk-ui-ext.d.ts +1 -0
- package/package.json +21 -21
- package/styles/css/main.css +52 -0
- package/styles/css/main.css.map +1 -1
- package/styles/internal/css/user_management_dialogs.css +52 -0
- package/styles/internal/css/user_management_dialogs.css.map +1 -1
- package/styles/internal/scss/user_management_dialogs.scss +55 -0
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type ILocalizationStatistics, type IUserLocalizationSettings } from "@gooddata/sdk-backend-spi";
|
|
1
2
|
import { type IUser } from "@gooddata/sdk-model";
|
|
2
3
|
export interface IEditUserDetailsProps {
|
|
3
4
|
isAdmin: boolean;
|
|
@@ -6,10 +7,15 @@ export interface IEditUserDetailsProps {
|
|
|
6
7
|
enableBackButton?: boolean;
|
|
7
8
|
changeUserMembership?: boolean;
|
|
8
9
|
isSystemAccountFilteringEnabled?: boolean;
|
|
9
|
-
|
|
10
|
+
isLocalizationEnabled?: boolean;
|
|
11
|
+
languages?: IUserLocalizationSettings;
|
|
12
|
+
isLanguagesError?: boolean;
|
|
13
|
+
statistics?: ILocalizationStatistics;
|
|
14
|
+
onLanguagesSaveFailed?: () => void;
|
|
15
|
+
onSubmit: (user: IUser, isAdmin: boolean, languages?: IUserLocalizationSettings) => void;
|
|
10
16
|
onCancel: () => void;
|
|
11
17
|
onClose: () => void;
|
|
12
18
|
removeAdminGroup: () => Promise<void>;
|
|
13
19
|
}
|
|
14
|
-
export declare function EditUserDetails({ user, isBootstrapUser, isAdmin, enableBackButton, changeUserMembership, isSystemAccountFilteringEnabled, onSubmit, onCancel, onClose, removeAdminGroup, }: IEditUserDetailsProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export declare function EditUserDetails({ user, isBootstrapUser, isAdmin, enableBackButton, changeUserMembership, isSystemAccountFilteringEnabled, isLocalizationEnabled, languages, isLanguagesError, statistics, onLanguagesSaveFailed, onSubmit, onCancel, onClose, removeAdminGroup, }: IEditUserDetailsProps): import("react/jsx-runtime").JSX.Element;
|
|
15
21
|
//# sourceMappingURL=EditUserDetails.d.ts.map
|
package/esm/internal/components/dialogs/userManagementDialogs/Details/EditUserDetails.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditUserDetails.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Details/EditUserDetails.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAC;AASjD,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"EditUserDetails.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Details/EditUserDetails.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,uBAAuB,EAAE,KAAK,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACzG,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAC;AASjD,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,yBAAyB,CAAC;IACtC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACzF,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACzC;AAED,wBAAgB,eAAe,CAAC,EAC5B,IAAI,EACJ,eAAe,EACf,OAAO,EACP,gBAAgB,EAChB,oBAAoB,EACpB,+BAA+B,EAC/B,qBAAqB,EACrB,SAAS,EACT,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,gBAAgB,GACnB,EAAE,qBAAqB,2CAgEvB"}
|
|
@@ -7,9 +7,9 @@ import { messages } from "../locales.js";
|
|
|
7
7
|
import { extractUserName } from "../utils.js";
|
|
8
8
|
import { useUserDetails } from "./detailsHooks.js";
|
|
9
9
|
import { UserDetailsView } from "./UserDetailsView.js";
|
|
10
|
-
export function EditUserDetails({ user, isBootstrapUser, isAdmin, enableBackButton, changeUserMembership, isSystemAccountFilteringEnabled, onSubmit, onCancel, onClose, removeAdminGroup, }) {
|
|
10
|
+
export function EditUserDetails({ user, isBootstrapUser, isAdmin, enableBackButton, changeUserMembership, isSystemAccountFilteringEnabled, isLocalizationEnabled, languages, isLanguagesError, statistics, onLanguagesSaveFailed, onSubmit, onCancel, onClose, removeAdminGroup, }) {
|
|
11
11
|
const intl = useIntl();
|
|
12
|
-
const { updatedUser, isUpdatedAdmin, isProcessing, onSave, onChange, isDirty } = useUserDetails(user, isAdmin, onSubmit, onCancel, removeAdminGroup, isSystemAccountFilteringEnabled);
|
|
12
|
+
const { updatedUser, isUpdatedAdmin, updatedLanguages, isProcessing, onSave, onChange, onLanguagesChange, isDirty, } = useUserDetails(user, isAdmin, onSubmit, onCancel, removeAdminGroup, isSystemAccountFilteringEnabled, languages, onLanguagesSaveFailed);
|
|
13
13
|
// change user membership if dialog was opened for that reason, enable Save button, do it just once
|
|
14
14
|
useEffect(() => {
|
|
15
15
|
if (changeUserMembership) {
|
|
@@ -20,5 +20,5 @@ export function EditUserDetails({ user, isBootstrapUser, isAdmin, enableBackButt
|
|
|
20
20
|
const backButtonRenderer = useCallback(() => {
|
|
21
21
|
return _jsx(BackButton, { onClick: onCancel, className: "s-user-management-navigate-back" });
|
|
22
22
|
}, [onCancel]);
|
|
23
|
-
return (_jsx(ConfirmDialogBase, { className: "gd-share-dialog gd-share-dialog-add-users s-user-management-edit-user", displayCloseButton: true, isPositive: true, isSubmitDisabled: !isDirty || isProcessing, showProgressIndicator: isProcessing, headline: extractUserName(user), cancelButtonText: intl.formatMessage(messages.closeEditMode), submitButtonText: intl.formatMessage(messages.saveEditedDetails), onCancel: onCancel, onSubmit: onSave, onClose: onClose, headerLeftButtonRenderer: enableBackButton ? backButtonRenderer : undefined, children: _jsx(UserDetailsView, { user: updatedUser, isAdmin: isUpdatedAdmin, isBootstrapUser: isBootstrapUser, mode: "EDIT", isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled, onChange: onChange }) }));
|
|
23
|
+
return (_jsx(ConfirmDialogBase, { className: "gd-share-dialog gd-share-dialog-add-users s-user-management-edit-user", displayCloseButton: true, isPositive: true, isSubmitDisabled: !isDirty || isProcessing, showProgressIndicator: isProcessing, headline: extractUserName(user), cancelButtonText: intl.formatMessage(messages.closeEditMode), submitButtonText: intl.formatMessage(messages.saveEditedDetails), onCancel: onCancel, onSubmit: onSave, onClose: onClose, headerLeftButtonRenderer: enableBackButton ? backButtonRenderer : undefined, children: _jsx(UserDetailsView, { user: updatedUser, isAdmin: isUpdatedAdmin, isBootstrapUser: isBootstrapUser, mode: "EDIT", isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled, isLocalizationEnabled: isLocalizationEnabled, languages: updatedLanguages, isLanguagesError: isLanguagesError, statistics: statistics, onChange: onChange, onLanguagesChange: onLanguagesChange }) }));
|
|
24
24
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type ILocalizationStatistics, type IUserLocalizationSettings } from "@gooddata/sdk-backend-spi";
|
|
1
2
|
import { type IUser } from "@gooddata/sdk-model";
|
|
2
3
|
import { type ListMode } from "../types.js";
|
|
3
4
|
export interface IDetailsViewProps {
|
|
@@ -6,7 +7,12 @@ export interface IDetailsViewProps {
|
|
|
6
7
|
user: IUser | undefined;
|
|
7
8
|
mode: ListMode;
|
|
8
9
|
isSystemAccountFilteringEnabled?: boolean;
|
|
10
|
+
isLocalizationEnabled?: boolean;
|
|
11
|
+
languages?: IUserLocalizationSettings;
|
|
12
|
+
isLanguagesError?: boolean;
|
|
13
|
+
statistics?: ILocalizationStatistics;
|
|
9
14
|
onChange?: (user: IUser, isAdmin: boolean) => void;
|
|
15
|
+
onLanguagesChange?: (languages: IUserLocalizationSettings) => void;
|
|
10
16
|
}
|
|
11
|
-
export declare function UserDetailsView({ user, isAdmin, isBootstrapUser, mode, isSystemAccountFilteringEnabled, onChange, }: IDetailsViewProps): import("react/jsx-runtime").JSX.Element | null;
|
|
17
|
+
export declare function UserDetailsView({ user, isAdmin, isBootstrapUser, mode, isSystemAccountFilteringEnabled, isLocalizationEnabled, languages, isLanguagesError, statistics, onChange, onLanguagesChange, }: IDetailsViewProps): import("react/jsx-runtime").JSX.Element | null;
|
|
12
18
|
//# sourceMappingURL=UserDetailsView.d.ts.map
|
package/esm/internal/components/dialogs/userManagementDialogs/Details/UserDetailsView.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserDetailsView.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Details/UserDetailsView.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"UserDetailsView.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Details/UserDetailsView.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,uBAAuB,EAAE,KAAK,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACzG,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAKjD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAO5C,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;IACxB,IAAI,EAAE,QAAQ,CAAC;IACf,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,yBAAyB,CAAC;IACtC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACnD,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,yBAAyB,KAAK,IAAI,CAAC;CACtE;AAED,wBAAgB,eAAe,CAAC,EAC5B,IAAI,EACJ,OAAO,EACP,eAAe,EACf,IAAI,EACJ,+BAAuC,EACvC,qBAA6B,EAC7B,SAAS,EACT,gBAAwB,EACxB,UAAU,EACV,QAAQ,EACR,iBAAiB,GACpB,EAAE,iBAAiB,kDAiHnB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
// (C) 2023-2026 GoodData Corporation
|
|
3
3
|
import { useId } from "react";
|
|
4
|
+
import cx from "classnames";
|
|
4
5
|
import { useIntl } from "react-intl";
|
|
5
6
|
import { Checkbox } from "@gooddata/sdk-ui-kit";
|
|
6
7
|
import { messages } from "../locales.js";
|
|
@@ -8,7 +9,8 @@ import { useTelemetry } from "../TelemetryContext.js";
|
|
|
8
9
|
import { QuestionMarkIcon } from "../Workspace/WorkspaceItem/QuestionMarkIcon.js";
|
|
9
10
|
import { DetailRow } from "./DetailRow.js";
|
|
10
11
|
import { OrganizationMemberDropdown } from "./OrganizationMemberDropdown.js";
|
|
11
|
-
|
|
12
|
+
import { UserLanguagesSection } from "./UserLanguagesSection.js";
|
|
13
|
+
export function UserDetailsView({ user, isAdmin, isBootstrapUser, mode, isSystemAccountFilteringEnabled = false, isLocalizationEnabled = false, languages, isLanguagesError = false, statistics, onChange, onLanguagesChange, }) {
|
|
12
14
|
const intl = useIntl();
|
|
13
15
|
const trackEvent = useTelemetry();
|
|
14
16
|
const systemAccountCheckboxId = useId();
|
|
@@ -21,14 +23,19 @@ export function UserDetailsView({ user, isAdmin, isBootstrapUser, mode, isSystem
|
|
|
21
23
|
// demoted to a regular member.
|
|
22
24
|
const isSystemAccountDisplayed = isAdmin || !!user.systemAccount;
|
|
23
25
|
const isSystemAccountDisabled = mode === "VIEW" || isAdmin;
|
|
24
|
-
|
|
26
|
+
const idRow = (_jsx(DetailRow, { labelText: intl.formatMessage(messages.userId), value: user.login, mode: mode, disabled: true, onChange: () => { } }));
|
|
27
|
+
return (_jsxs("div", { className: cx("gd-user-management-dialog-detail", "s-user-management-user", {
|
|
28
|
+
"gd-user-management-dialog-detail-localization": isLocalizationEnabled,
|
|
29
|
+
}), children: [_jsx(DetailRow, { labelText: intl.formatMessage(messages.userFirstName), value: user.firstName, mode: mode, onChange: (firstName) => onChange?.({ ...user, firstName: String(firstName) }, isAdmin) }), _jsx(DetailRow, { labelText: intl.formatMessage(messages.userLastName), value: user.lastName, mode: mode, onChange: (lastName) => onChange?.({ ...user, lastName: String(lastName) }, isAdmin) }), _jsx(DetailRow, { labelText: intl.formatMessage(messages.userEmail), value: user.email, mode: mode, onChange: (email) => onChange?.({ ...user, email: String(email) }, isAdmin) }), isLocalizationEnabled ? idRow : null, _jsxs("div", { className: "gd-user-management-dialog-detail-row", children: [_jsx("div", { className: "gd-user-management-dialog-detail-label", children: intl.formatMessage(messages.userMembership) }), _jsxs("div", { children: [mode === "VIEW" &&
|
|
25
30
|
(isAdmin
|
|
26
31
|
? intl.formatMessage(messages.userIsAdmin)
|
|
27
32
|
: intl.formatMessage(messages.userIsRegularUser)), mode === "EDIT" && (_jsx(OrganizationMemberDropdown, { isDisabled: isBootstrapUser, isAdmin: isAdmin, onChange: (isAdminNow) => {
|
|
28
33
|
onChange?.(user, isAdminNow);
|
|
29
34
|
trackEvent(isAdmin ? "user-role-changed-to-admin" : "user-role-changed-to-member");
|
|
30
|
-
} }))] })] }), isSystemAccountFilteringEnabled ? (_jsxs("div", { className: "gd-user-management-dialog-detail-row",
|
|
35
|
+
} }))] })] }), isSystemAccountFilteringEnabled ? (_jsxs("div", { className: cx("gd-user-management-dialog-detail-row", {
|
|
36
|
+
"gd-user-management-dialog-detail-row-checkbox-edit": isLocalizationEnabled && mode === "EDIT",
|
|
37
|
+
}), children: [_jsxs("div", { className: "gd-user-management-dialog-detail-label gd-user-management-dialog-detail-label-with-icon", children: [_jsx("label", { htmlFor: systemAccountCheckboxId, children: intl.formatMessage(messages.userSystemAccount) }), _jsx(QuestionMarkIcon, { bubbleTextId: messages.userSystemAccountTooltip.id })] }), _jsx("div", { children: _jsx(Checkbox, { id: systemAccountCheckboxId, value: isSystemAccountDisplayed, disabled: isSystemAccountDisabled, onChange: (value) => {
|
|
31
38
|
onChange?.({ ...user, systemAccount: value }, isAdmin);
|
|
32
39
|
trackEvent(value ? "user-marked-system-account" : "user-unmarked-system-account");
|
|
33
|
-
} }) })] })) : null, _jsx(
|
|
40
|
+
} }) })] })) : null, isLocalizationEnabled ? null : idRow, isLocalizationEnabled ? (_jsx(UserLanguagesSection, { languages: languages, isError: isLanguagesError, mode: mode, statistics: statistics, onChange: onLanguagesChange })) : null] }));
|
|
34
41
|
}
|
package/esm/internal/components/dialogs/userManagementDialogs/Details/UserLanguagesSection.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ILocalizationStatistics, type IUserLocalizationSettings } from "@gooddata/sdk-backend-spi";
|
|
2
|
+
import { type ListMode } from "../types.js";
|
|
3
|
+
export interface IUserLanguagesSectionProps {
|
|
4
|
+
languages: IUserLocalizationSettings | undefined;
|
|
5
|
+
isError: boolean;
|
|
6
|
+
mode: ListMode;
|
|
7
|
+
statistics?: ILocalizationStatistics;
|
|
8
|
+
onChange?: (languages: IUserLocalizationSettings) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function UserLanguagesSection({ languages, isError, mode, statistics, onChange, }: IUserLanguagesSectionProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
//# sourceMappingURL=UserLanguagesSection.d.ts.map
|
package/esm/internal/components/dialogs/userManagementDialogs/Details/UserLanguagesSection.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UserLanguagesSection.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Details/UserLanguagesSection.tsx"],"names":[],"mappings":"AAOA,OAAO,EACH,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAEjC,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAoB5C,MAAM,WAAW,0BAA0B;IACvC,SAAS,EAAE,yBAAyB,GAAG,SAAS,CAAC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,yBAAyB,KAAK,IAAI,CAAC;CAC7D;AAED,wBAAgB,oBAAoB,CAAC,EACjC,SAAS,EACT,OAAO,EACP,IAAI,EACJ,UAAU,EACV,QAAQ,GACX,EAAE,0BAA0B,2CAqD5B"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// (C) 2026 GoodData Corporation
|
|
3
|
+
import { Fragment, useId } from "react";
|
|
4
|
+
import cx from "classnames";
|
|
5
|
+
import { useIntl } from "react-intl";
|
|
6
|
+
import { DropdownButton, Message, UiDropdown, UiListbox } from "@gooddata/sdk-ui-kit";
|
|
7
|
+
import { messages } from "../locales.js";
|
|
8
|
+
import { QuestionMarkIcon } from "../Workspace/WorkspaceItem/QuestionMarkIcon.js";
|
|
9
|
+
import { USER_LANGUAGE_SETTINGS, languageName, languageNotice, languageOptions } from "./userLanguages.js";
|
|
10
|
+
const NOT_SET_ID = "not-set";
|
|
11
|
+
const LIST_MAX_HEIGHT = 250;
|
|
12
|
+
const LABELS = {
|
|
13
|
+
LOCALE: messages.userInterfaceLanguage,
|
|
14
|
+
METADATA_LOCALE: messages.userMetadataLanguage,
|
|
15
|
+
DATA_LOCALE: messages.userDataLanguage,
|
|
16
|
+
};
|
|
17
|
+
const NOT_SET_TOOLTIPS = {
|
|
18
|
+
LOCALE: messages.userInterfaceLanguageNotSetTooltip,
|
|
19
|
+
METADATA_LOCALE: messages.userMetadataLanguageNotSetTooltip,
|
|
20
|
+
DATA_LOCALE: messages.userDataLanguageNotSetTooltip,
|
|
21
|
+
};
|
|
22
|
+
export function UserLanguagesSection({ languages, isError, mode, statistics, onChange, }) {
|
|
23
|
+
const intl = useIntl();
|
|
24
|
+
const idPrefix = useId();
|
|
25
|
+
const change = (type, value) => {
|
|
26
|
+
onChange?.({ ...languages, [type]: value });
|
|
27
|
+
};
|
|
28
|
+
return (_jsxs(_Fragment, { children: [_jsx("div", { className: "gd-user-management-dialog-detail-section-title", children: intl.formatMessage(messages.userLanguagesTitle) }), isError ? (_jsx("div", { className: "gd-user-management-dialog-detail-value-empty s-user-languages-error", children: intl.formatMessage(messages.userLanguagesLoadError) })) : (USER_LANGUAGE_SETTINGS.map((type) => {
|
|
29
|
+
const notice = mode === "VIEW" && languages ? languageNotice(type, languages) : undefined;
|
|
30
|
+
return (_jsxs(Fragment, { children: [_jsxs("div", { className: cx("gd-user-management-dialog-detail-row", `s-user-language-${type}`), children: [_jsx("div", { id: `${idPrefix}-${type}-label`, className: "gd-user-management-dialog-detail-label", children: intl.formatMessage(LABELS[type]) }), mode === "VIEW" ? (_jsx(LanguageValue, { type: type, code: languages?.[type] })) : (_jsx(LanguageDropdown, { type: type, labelId: `${idPrefix}-${type}-label`, code: languages?.[type], statistics: statistics, onSelect: (value) => change(type, value) }))] }), notice ? _jsx(LanguageNotSupportedMessage, { type: type }) : null] }, type));
|
|
31
|
+
}))] }));
|
|
32
|
+
}
|
|
33
|
+
function LanguageNotSupportedMessage({ type }) {
|
|
34
|
+
const intl = useIntl();
|
|
35
|
+
return (_jsx(Message, { type: "error", className: cx("gd-user-management-dialog-detail-notice", `s-user-language-notice-${type}`), children: intl.formatMessage(messages.userLanguageNotSupported, {
|
|
36
|
+
b: (chunks) => _jsx("b", { children: chunks }),
|
|
37
|
+
}) }));
|
|
38
|
+
}
|
|
39
|
+
function LanguageCode({ code }) {
|
|
40
|
+
return _jsx("span", { className: "gd-user-management-dialog-detail-code", children: code });
|
|
41
|
+
}
|
|
42
|
+
function LanguageValue({ type, code }) {
|
|
43
|
+
const intl = useIntl();
|
|
44
|
+
if (!code) {
|
|
45
|
+
return (_jsxs("div", { className: "gd-user-management-dialog-detail-value gd-user-management-dialog-detail-value-not-set", children: [intl.formatMessage(messages.userLanguageNotSet), _jsx(QuestionMarkIcon, { bubbleTextId: NOT_SET_TOOLTIPS[type].id })] }));
|
|
46
|
+
}
|
|
47
|
+
return (_jsxs("div", { className: "gd-user-management-dialog-detail-value", children: [languageName(code, intl.locale), " ", _jsx(LanguageCode, { code: code })] }));
|
|
48
|
+
}
|
|
49
|
+
function LanguageDropdown({ type, labelId, code, statistics, onSelect, }) {
|
|
50
|
+
const intl = useIntl();
|
|
51
|
+
const optionLabel = (value) => value
|
|
52
|
+
? intl.formatMessage(messages.userLanguageOption, {
|
|
53
|
+
name: languageName(value, intl.locale),
|
|
54
|
+
code: value,
|
|
55
|
+
})
|
|
56
|
+
: intl.formatMessage(messages.userLanguageNotSetOption);
|
|
57
|
+
const items = [
|
|
58
|
+
undefined,
|
|
59
|
+
...languageOptions(type, code, intl.locale, statistics),
|
|
60
|
+
].map((value) => ({
|
|
61
|
+
type: "interactive",
|
|
62
|
+
id: value ?? NOT_SET_ID,
|
|
63
|
+
stringTitle: optionLabel(value),
|
|
64
|
+
data: value,
|
|
65
|
+
}));
|
|
66
|
+
return (_jsx(UiDropdown, { width: "same-as-anchor", closeOnParentScroll: true, closeOnMouseDrag: true, closeOnEscape: true, autofocusOnOpen: true, accessibilityConfig: {
|
|
67
|
+
triggerRole: "combobox",
|
|
68
|
+
popupRole: "listbox",
|
|
69
|
+
}, renderButton: ({ isOpen, toggleDropdown, ref, dropdownId }) => (_jsx(DropdownButton, { value: code ? (_jsxs(_Fragment, { children: [languageName(code, intl.locale), " ", _jsx(LanguageCode, { code: code })] })) : (intl.formatMessage(messages.userLanguageNotSet)), title: optionLabel(code), isOpen: isOpen, isSmall: false, onClick: toggleDropdown, buttonRef: ref, dropdownId: dropdownId, accessibilityConfig: {
|
|
70
|
+
popupType: "listbox",
|
|
71
|
+
ariaLabelledBy: labelId,
|
|
72
|
+
}, className: "gd-user-management-dialog-detail-input s-user-language-dropdown" })), renderBody: ({ closeDropdown, ariaAttributes }) => (_jsx(UiListbox, { items: items, selectedItemId: code ?? NOT_SET_ID, maxHeight: LIST_MAX_HEIGHT, ariaAttributes: {
|
|
73
|
+
...ariaAttributes,
|
|
74
|
+
"aria-labelledby": labelId,
|
|
75
|
+
}, onClose: closeDropdown, onSelect: (item) => onSelect(item.data) })) }));
|
|
76
|
+
}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import { type IUserLocalizationSettings } from "@gooddata/sdk-backend-spi";
|
|
1
2
|
import { type IUser, type IUserGroup } from "@gooddata/sdk-model";
|
|
2
|
-
export declare const useUserDetails: (user: IUser | undefined, isAdmin: boolean, onSubmit: (user: IUser, isAdmin: boolean) => void, onCancel: () => void, removeAdminGroup: () => Promise<void>, isSystemAccountFilteringEnabled?: boolean) => {
|
|
3
|
+
export declare const useUserDetails: (user: IUser | undefined, isAdmin: boolean, onSubmit: (user: IUser, isAdmin: boolean, languages?: IUserLocalizationSettings) => void, onCancel: () => void, removeAdminGroup: () => Promise<void>, isSystemAccountFilteringEnabled?: boolean, languages?: IUserLocalizationSettings, onLanguagesSaveFailed?: () => void) => {
|
|
3
4
|
updatedUser: IUser | undefined;
|
|
4
5
|
isUpdatedAdmin: boolean;
|
|
6
|
+
updatedLanguages: Partial<Record<import("@gooddata/sdk-backend-spi").LocalizationSettingType, string>> | undefined;
|
|
7
|
+
onLanguagesChange: import("react").Dispatch<import("react").SetStateAction<Partial<Record<import("@gooddata/sdk-backend-spi").LocalizationSettingType, string>> | undefined>>;
|
|
5
8
|
onChange: (user: IUser, isAdmin: boolean) => void;
|
|
6
9
|
onSave: () => void;
|
|
7
10
|
isDirty: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detailsHooks.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Details/detailsHooks.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"detailsHooks.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Details/detailsHooks.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAUlE,eAAO,MAAM,cAAc,SACjB,KAAK,GAAG,SAAS,WACd,OAAO,YACN,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,yBAAyB,KAAK,IAAI,YAC9E,MAAM,IAAI,oBACF,MAAM,OAAO,CAAC,IAAI,CAAC,yDAEzB,yBAAyB,0BACb,MAAM,IAAI;;;;;qBAyBV,KAAK,WAAW,OAAO;;;;CAqFlD,CAAC;AAEF,eAAO,MAAM,mBAAmB,cACjB,UAAU,GAAG,SAAS,YACvB,CAAC,SAAS,EAAE,UAAU,KAAK,IAAI,YAC/B,MAAM,IAAI;;;;;;CAgDvB,CAAC"}
|
|
@@ -6,9 +6,11 @@ import { useToastMessage } from "@gooddata/sdk-ui-kit";
|
|
|
6
6
|
import { messages } from "../locales.js";
|
|
7
7
|
import { useOrganizationId } from "../OrganizationIdContext.js";
|
|
8
8
|
import { useTelemetry } from "../TelemetryContext.js";
|
|
9
|
-
|
|
9
|
+
import { changedLanguageSettings } from "./userLanguages.js";
|
|
10
|
+
export const useUserDetails = (user, isAdmin, onSubmit, onCancel, removeAdminGroup, isSystemAccountFilteringEnabled = false, languages, onLanguagesSaveFailed) => {
|
|
10
11
|
const { addSuccess, addError } = useToastMessage();
|
|
11
12
|
const [updatedUser, setUpdatedUser] = useState(user);
|
|
13
|
+
const [updatedLanguages, setUpdatedLanguages] = useState(languages);
|
|
12
14
|
const [isUpdatedAdmin, setUpdatedAdmin] = useState(isAdmin);
|
|
13
15
|
const backend = useBackendStrict();
|
|
14
16
|
const organizationId = useOrganizationId();
|
|
@@ -18,6 +20,10 @@ export const useUserDetails = (user, isAdmin, onSubmit, onCancel, removeAdminGro
|
|
|
18
20
|
useEffect(() => {
|
|
19
21
|
setUpdatedUser(user);
|
|
20
22
|
}, [user]);
|
|
23
|
+
useEffect(() => {
|
|
24
|
+
setUpdatedLanguages((current) => current ?? languages);
|
|
25
|
+
}, [languages]);
|
|
26
|
+
const languageChanges = useMemo(() => (languages && updatedLanguages ? changedLanguageSettings(languages, updatedLanguages) : []), [languages, updatedLanguages]);
|
|
21
27
|
const onChange = (user, isAdmin) => {
|
|
22
28
|
setUpdatedUser(user);
|
|
23
29
|
setUpdatedAdmin(isAdmin);
|
|
@@ -33,10 +39,13 @@ export const useUserDetails = (user, isAdmin, onSubmit, onCancel, removeAdminGro
|
|
|
33
39
|
fullName: firstName && lastName ? `${firstName} ${lastName}` : undefined,
|
|
34
40
|
...(isSystemAccountFilteringEnabled ? {} : { systemAccount: undefined }),
|
|
35
41
|
};
|
|
42
|
+
const isLanguageOnlySave = stringify(user) === stringify(updatedUser) && !updateAdmin && languageChanges.length > 0;
|
|
36
43
|
setIsProcessing(true);
|
|
37
44
|
Promise.all([
|
|
38
45
|
// update user details
|
|
39
|
-
|
|
46
|
+
isLanguageOnlySave
|
|
47
|
+
? Promise.resolve()
|
|
48
|
+
: backend.organization(organizationId).users().updateUser(sanitizedUser),
|
|
40
49
|
// grant or remove org manage rights if they are supposed to change
|
|
41
50
|
updateAdmin
|
|
42
51
|
? backend
|
|
@@ -54,23 +63,34 @@ export const useUserDetails = (user, isAdmin, onSubmit, onCancel, removeAdminGro
|
|
|
54
63
|
: Promise.resolve(),
|
|
55
64
|
// remove admin group if org manage rights must be removed and user is its member
|
|
56
65
|
updateAdmin && !isUpdatedAdmin ? removeAdminGroup() : Promise.resolve(),
|
|
66
|
+
...languageChanges.map(([type, value]) => backend
|
|
67
|
+
.organization(organizationId)
|
|
68
|
+
.users()
|
|
69
|
+
.setUserLocalizationSetting(sanitizedUser.login, type, value)),
|
|
57
70
|
])
|
|
58
71
|
.then(() => {
|
|
59
72
|
addSuccess(messages.userDetailsUpdatedSuccess);
|
|
60
73
|
trackEvent("user-detail-updated");
|
|
61
|
-
onSubmit(sanitizedUser, isUpdatedAdmin);
|
|
74
|
+
onSubmit(sanitizedUser, isUpdatedAdmin, updatedLanguages);
|
|
62
75
|
onCancel();
|
|
63
76
|
})
|
|
64
77
|
.catch((error) => {
|
|
65
78
|
console.error("Change of user details failed", error);
|
|
66
79
|
addError(messages.userDetailsUpdatedFailure);
|
|
80
|
+
if (languageChanges.length > 0) {
|
|
81
|
+
onLanguagesSaveFailed?.();
|
|
82
|
+
}
|
|
67
83
|
})
|
|
68
84
|
.finally(() => setIsProcessing(false));
|
|
69
85
|
};
|
|
70
|
-
const isDirty = useMemo(() => stringify(user) !== stringify(updatedUser) ||
|
|
86
|
+
const isDirty = useMemo(() => stringify(user) !== stringify(updatedUser) ||
|
|
87
|
+
isAdmin !== isUpdatedAdmin ||
|
|
88
|
+
languageChanges.length > 0, [user, updatedUser, isAdmin, isUpdatedAdmin, languageChanges]);
|
|
71
89
|
return {
|
|
72
90
|
updatedUser,
|
|
73
91
|
isUpdatedAdmin,
|
|
92
|
+
updatedLanguages,
|
|
93
|
+
onLanguagesChange: setUpdatedLanguages,
|
|
74
94
|
onChange,
|
|
75
95
|
onSave,
|
|
76
96
|
isDirty,
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ILocalizationStatistics, type IUserLocalizationSettings, type LocalizationSettingType } from "@gooddata/sdk-backend-spi";
|
|
2
|
+
export declare const USER_LANGUAGE_SETTINGS: LocalizationSettingType[];
|
|
3
|
+
export type LanguageNotice = {
|
|
4
|
+
type: "notSupported";
|
|
5
|
+
};
|
|
6
|
+
export declare function languageName(code: string, uiLocale: string): string;
|
|
7
|
+
export declare function isInterfaceLanguage(code: string): boolean;
|
|
8
|
+
export declare function languageOptions(setting: LocalizationSettingType, current: string | undefined, uiLocale: string, statistics?: ILocalizationStatistics): string[];
|
|
9
|
+
export declare function languageNotice(setting: LocalizationSettingType, languages: IUserLocalizationSettings): LanguageNotice | undefined;
|
|
10
|
+
export declare function changedLanguageSettings(original: IUserLocalizationSettings, updated: IUserLocalizationSettings): Array<[LocalizationSettingType, string | undefined]>;
|
|
11
|
+
//# sourceMappingURL=userLanguages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userLanguages.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Details/userLanguages.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC/B,MAAM,2BAA2B,CAAC;AAGnC,eAAO,MAAM,sBAAsB,EAAE,uBAAuB,EAAiD,CAAC;AAS9G,MAAM,MAAM,cAAc,GAAG;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,CAAC;AAsBtD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMnE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,wBAAgB,eAAe,CAC3B,OAAO,EAAE,uBAAuB,EAChC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,uBAAuB,GACrC,MAAM,EAAE,CAQV;AAED,wBAAgB,cAAc,CAC1B,OAAO,EAAE,uBAAuB,EAChC,SAAS,EAAE,yBAAyB,GACrC,cAAc,GAAG,SAAS,CAG5B;AAED,wBAAgB,uBAAuB,CACnC,QAAQ,EAAE,yBAAyB,EACnC,OAAO,EAAE,yBAAyB,GACnC,KAAK,CAAC,CAAC,uBAAuB,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAKtD"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
// (C) 2026 GoodData Corporation
|
|
2
|
+
import { LOCALES } from "@gooddata/sdk-model";
|
|
3
|
+
export const USER_LANGUAGE_SETTINGS = ["LOCALE", "METADATA_LOCALE", "DATA_LOCALE"];
|
|
4
|
+
const TRANSLATION_KINDS = {
|
|
5
|
+
METADATA_LOCALE: "metadata",
|
|
6
|
+
DATA_LOCALE: "data",
|
|
7
|
+
};
|
|
8
|
+
const displayNames = new Map();
|
|
9
|
+
function displayNamesFor(uiLocale) {
|
|
10
|
+
if (!displayNames.has(uiLocale)) {
|
|
11
|
+
try {
|
|
12
|
+
displayNames.set(uiLocale, new Intl.DisplayNames([uiLocale], {
|
|
13
|
+
type: "language",
|
|
14
|
+
languageDisplay: "standard",
|
|
15
|
+
fallback: "none",
|
|
16
|
+
}));
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
displayNames.set(uiLocale, undefined);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return displayNames.get(uiLocale);
|
|
23
|
+
}
|
|
24
|
+
export function languageName(code, uiLocale) {
|
|
25
|
+
try {
|
|
26
|
+
return displayNamesFor(uiLocale)?.of(code.split("-x-")[0]) ?? code;
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
return code;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export function isInterfaceLanguage(code) {
|
|
33
|
+
return LOCALES.some((locale) => locale === code);
|
|
34
|
+
}
|
|
35
|
+
export function languageOptions(setting, current, uiLocale, statistics) {
|
|
36
|
+
const kind = TRANSLATION_KINDS[setting];
|
|
37
|
+
const available = kind && statistics ? statistics[kind].locales.map(({ locale }) => locale) : [...LOCALES];
|
|
38
|
+
const codes = new Set(current ? [...available, current] : available);
|
|
39
|
+
return [...codes].sort((a, b) => languageName(a, uiLocale).localeCompare(languageName(b, uiLocale), uiLocale));
|
|
40
|
+
}
|
|
41
|
+
export function languageNotice(setting, languages) {
|
|
42
|
+
const code = languages[setting];
|
|
43
|
+
return setting === "LOCALE" && code && !isInterfaceLanguage(code) ? { type: "notSupported" } : undefined;
|
|
44
|
+
}
|
|
45
|
+
export function changedLanguageSettings(original, updated) {
|
|
46
|
+
return USER_LANGUAGE_SETTINGS.filter((type) => original[type] !== updated[type]).map((type) => [
|
|
47
|
+
type,
|
|
48
|
+
updated[type],
|
|
49
|
+
]);
|
|
50
|
+
}
|
|
@@ -18,6 +18,7 @@ export interface IUserEditDialogProps extends IWithTelemetryProps {
|
|
|
18
18
|
isCreateVisualizationWorkspacePermissionEnabled?: boolean;
|
|
19
19
|
areComputedAttributesEnabled?: boolean;
|
|
20
20
|
areVisualizationPermissionsEnabled?: boolean;
|
|
21
|
+
isLocalizationEnabled?: boolean;
|
|
21
22
|
selectedTab?: UserTabId;
|
|
22
23
|
}
|
|
23
24
|
/**
|
|
@@ -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;
|
|
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;AA4B7D,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,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,kCAAkC,CAAC,EAAE,OAAO,CAAC;IAC7C,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,WAAW,CAAC,EAAE,SAAS,CAAC;CAC3B;AAyTD;;GAEG;AACH,eAAO,MAAM,cAAc;;;CAAyC,CAAC"}
|
|
@@ -10,7 +10,7 @@ import { AddDataSource } from "./DataSources/AddDataSource.js";
|
|
|
10
10
|
import { DataSourceList } from "./DataSources/DataSourceList.js";
|
|
11
11
|
import { EditUserDetails } from "./Details/EditUserDetails.js";
|
|
12
12
|
import { UserDetailsView } from "./Details/UserDetailsView.js";
|
|
13
|
-
import { useDeleteDialog, useDeleteUser, useOrganizationDetails, useUser, useUserDialogMode, useUserDialogTabs, useUserGroups, } from "./dialogHooks.js";
|
|
13
|
+
import { useDeleteDialog, useDeleteUser, useLanguageStatistics, useOrganizationDetails, useUser, useUserDialogMode, useUserDialogTabs, useUserGroups, useUserLanguages, } from "./dialogHooks.js";
|
|
14
14
|
import { ErrorDialog } from "./ErrorDialog.js";
|
|
15
15
|
import { usePermissions } from "./hooks/usePermissions.js";
|
|
16
16
|
import { messages, userDialogTabsMessages } from "./locales.js";
|
|
@@ -23,10 +23,12 @@ 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, isCreateVisualizationWorkspacePermissionEnabled = false, areComputedAttributesEnabled = false, areVisualizationPermissionsEnabled = false, selectedTab = undefined, }) {
|
|
26
|
+
function UserEditDialogComponent({ userId, organizationId, isAdmin, onSuccess, onClose, initialView = "VIEW", changeUserMembership = false, renderDataSourceIcon, isSystemAccountFilteringEnabled = false, areMetricPermissionsEnabled = false, isCreateVisualizationWorkspacePermissionEnabled = false, areComputedAttributesEnabled = false, areVisualizationPermissionsEnabled = false, isLocalizationEnabled = 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);
|
|
30
|
+
const { languages, setLanguages, reloadLanguages, isLoading: languagesAreLoading, isError: isLanguagesError, } = useUserLanguages(userId, organizationId, isLocalizationEnabled);
|
|
31
|
+
const { statistics, isLoading: statisticsAreLoading } = useLanguageStatistics(organizationId, isLocalizationEnabled);
|
|
30
32
|
const { isBootstrapUser, bootstrapUserGroupId } = useOrganizationDetails(organizationId);
|
|
31
33
|
const { grantedWorkspaces, onWorkspacesChanged, removeGrantedWorkspace, updateGrantedWorkspace, grantedDataSources, onDataSourcesChanged, removeGrantedDataSource, updateGrantedDataSource, reloadPermissions, } = usePermissions({ id: userId, subjectType: "user", organizationId, onSuccess });
|
|
32
34
|
const { grantedUserGroups, onUserGroupsChanged, removeGrantedUserGroup, removeAdminGroup } = useUserGroups({
|
|
@@ -70,7 +72,12 @@ function UserEditDialogComponent({ userId, organizationId, isAdmin, onSuccess, o
|
|
|
70
72
|
}, [intl, selectedTabId]);
|
|
71
73
|
const isLoading = error
|
|
72
74
|
? false
|
|
73
|
-
: userIsLoading ||
|
|
75
|
+
: userIsLoading ||
|
|
76
|
+
languagesAreLoading ||
|
|
77
|
+
statisticsAreLoading ||
|
|
78
|
+
!grantedWorkspaces ||
|
|
79
|
+
!grantedUserGroups ||
|
|
80
|
+
!grantedDataSources;
|
|
74
81
|
const isOpenedInEditMode = initialView !== "VIEW";
|
|
75
82
|
const [workspaceToEdit, setWorkspaceToEdit] = useState(undefined);
|
|
76
83
|
const handleWorkspaceEdit = (workspace) => {
|
|
@@ -87,7 +94,10 @@ function UserEditDialogComponent({ userId, organizationId, isAdmin, onSuccess, o
|
|
|
87
94
|
};
|
|
88
95
|
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
96
|
? 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, isCreateVisualizationWorkspacePermissionEnabled: isCreateVisualizationWorkspacePermissionEnabled, areComputedAttributesEnabled: areComputedAttributesEnabled, areVisualizationPermissionsEnabled: areVisualizationPermissionsEnabled })), 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,
|
|
97
|
+
: 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, isLocalizationEnabled: isLocalizationEnabled, languages: languages, isLanguagesError: isLanguagesError })), 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, areComputedAttributesEnabled: areComputedAttributesEnabled, areVisualizationPermissionsEnabled: areVisualizationPermissionsEnabled })), 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, isLocalizationEnabled: isLocalizationEnabled, languages: languages, isLanguagesError: isLanguagesError, statistics: statistics, onLanguagesSaveFailed: reloadLanguages, onSubmit: (updatedUser, isUpdatedAdmin, updatedLanguages) => {
|
|
98
|
+
setLanguages(updatedLanguages);
|
|
99
|
+
onUserDetailsChanged(updatedUser, isUpdatedAdmin);
|
|
100
|
+
}, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, removeAdminGroup: removeAdminGroup }))] })) }) })] }));
|
|
91
101
|
}
|
|
92
102
|
/**
|
|
93
103
|
* @internal
|
|
@@ -9,6 +9,17 @@ export declare const useUser: (userId: string, organizationId: string, isAdmin:
|
|
|
9
9
|
error: any;
|
|
10
10
|
isLoading: boolean;
|
|
11
11
|
};
|
|
12
|
+
export declare const useUserLanguages: (userId: string, organizationId: string, isEnabled: boolean) => {
|
|
13
|
+
languages: Partial<Record<import("@gooddata/sdk-backend-spi").LocalizationSettingType, string>> | undefined;
|
|
14
|
+
setLanguages: import("react").Dispatch<import("react").SetStateAction<Partial<Record<import("@gooddata/sdk-backend-spi").LocalizationSettingType, string>> | undefined>>;
|
|
15
|
+
reloadLanguages: () => void;
|
|
16
|
+
isLoading: boolean;
|
|
17
|
+
isError: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare const useLanguageStatistics: (organizationId: string, isEnabled: boolean) => {
|
|
20
|
+
statistics: import("@gooddata/sdk-backend-spi").ILocalizationStatistics | undefined;
|
|
21
|
+
isLoading: boolean;
|
|
22
|
+
};
|
|
12
23
|
export declare const useUserGroup: (userGroupId: string, organizationId: string, onSuccess: () => void) => {
|
|
13
24
|
userGroup: IUserGroup | undefined;
|
|
14
25
|
onUserGroupDetailsChanged: (userGroup: IUserGroup) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialogHooks.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/dialogHooks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dialogHooks.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/dialogHooks.ts"],"names":[],"mappings":"AAOA,OAAO,EAEH,KAAK,KAAK,EACV,KAAK,UAAU,EAGlB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,IAAI,EAAmB,MAAM,sBAAsB,CAAC;AAIlE,OAAO,EACH,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,SAAS,EACjB,MAAM,YAAY,CAAC;AAGpB,eAAO,MAAM,OAAO,WAAY,MAAM,kBAAkB,MAAM,WAAW,OAAO,aAAa,MAAM,IAAI;;iCAc/D,KAAK,WAAW,OAAO;;;;;CAc9D,CAAC;AAEF,eAAO,MAAM,gBAAgB,WAAY,MAAM,kBAAkB,MAAM,aAAa,OAAO;;;;;;CA8B1F,CAAC;AAEF,eAAO,MAAM,qBAAqB,mBAAoB,MAAM,aAAa,OAAO;IAaxE,UAAU;IACV,SAAS;CAEhB,CAAC;AAEF,eAAO,MAAM,YAAY,gBAAiB,MAAM,kBAAkB,MAAM,aAAa,MAAM,IAAI;;2CAY7C,UAAU;;;CAW3D,CAAC;AAEF,eAAO,MAAM,aAAa,WACd,MAAM,kBACE,MAAM,aACX,MAAM,IAAI,WACZ,MAAM,IAAI;;;CA8BtB,CAAC;AAEF,eAAO,MAAM,kBAAkB,gBACd,MAAM,kBACH,MAAM,aACX,MAAM,IAAI,WACZ,MAAM,IAAI;;;CA8BtB,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;CAiB3B,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAGvC,mBAAmB,EAAE,MAAM,IAAI,CAAC;CACnC;AAED,eAAO,MAAM,aAAa,kGAOvB,oBAAoB;;sCA0DsB,iBAAiB,EAAE;+CArCV,iBAAiB;;CAwDtE,CAAC;AAEF,eAAO,MAAM,QAAQ,gBAAiB,MAAM,kBAAkB,MAAM,aAAa,MAAM,IAAI;;4BAuCxD,WAAW,EAAE;sCAjBH,WAAW;CA4BvD,CAAC;AAeF,eAAO,MAAM,iBAAiB,sBACP,iBAAiB,EAAE,GAAG,SAAS,qBAC/B,iBAAiB,EAAE,GAAG,SAAS,sBAC9B,kBAAkB,EAAE,GAAG,SAAS,WAC3C,OAAO,gBACF,SAAS;;;;;;;;CAmC1B,CAAC;AAEF,eAAO,MAAM,sBAAsB,sBACZ,iBAAiB,EAAE,GAAG,SAAS,gBACpC,WAAW,EAAE,sBACP,kBAAkB,EAAE,GAAG,SAAS,WAC3C,OAAO;;;;;;;;CA+BnB,CAAC;AAEF,eAAO,MAAM,iBAAiB,gBAAiB,kBAAkB;;;CAMhE,CAAC;AAEF,eAAO,MAAM,sBAAsB,gBAAiB,uBAAuB;;;CAM1E,CAAC;AAsBF,eAAO,MAAM,sBAAsB,mBAAoB,MAAM;IAGrD,eAAe,SAAS,KAAK,GAAG,SAAS;IACzC,oBAAoB,cAAc,UAAU,GAAG,SAAS;IAExD,eAAe;IACf,oBAAoB;CAE3B,CAAC"}
|
|
@@ -29,6 +29,43 @@ export const useUser = (userId, organizationId, isAdmin, onSuccess) => {
|
|
|
29
29
|
isLoading: status === "loading",
|
|
30
30
|
};
|
|
31
31
|
};
|
|
32
|
+
export const useUserLanguages = (userId, organizationId, isEnabled) => {
|
|
33
|
+
const [languages, setLanguages] = useState();
|
|
34
|
+
const backend = useBackendStrict();
|
|
35
|
+
const { status } = useCancelablePromise({
|
|
36
|
+
promise: isEnabled
|
|
37
|
+
? () => backend.organization(organizationId).users().getUserLocalizationSettings(userId)
|
|
38
|
+
: null,
|
|
39
|
+
onSuccess: (languages) => setLanguages(languages),
|
|
40
|
+
}, [backend, userId, organizationId, isEnabled]);
|
|
41
|
+
const reloadLanguages = useCallback(() => {
|
|
42
|
+
backend
|
|
43
|
+
.organization(organizationId)
|
|
44
|
+
.users()
|
|
45
|
+
.getUserLocalizationSettings(userId)
|
|
46
|
+
.then(setLanguages)
|
|
47
|
+
.catch((error) => console.error("Reload of user languages failed", error));
|
|
48
|
+
}, [backend, organizationId, userId]);
|
|
49
|
+
return {
|
|
50
|
+
languages,
|
|
51
|
+
setLanguages,
|
|
52
|
+
reloadLanguages,
|
|
53
|
+
isLoading: status === "loading",
|
|
54
|
+
isError: status === "error",
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
export const useLanguageStatistics = (organizationId, isEnabled) => {
|
|
58
|
+
const backend = useBackendStrict();
|
|
59
|
+
const { result, status } = useCancelablePromise({
|
|
60
|
+
promise: isEnabled
|
|
61
|
+
? () => backend.organization(organizationId).localization().getStatistics()
|
|
62
|
+
: null,
|
|
63
|
+
}, [backend, organizationId, isEnabled]);
|
|
64
|
+
return {
|
|
65
|
+
statistics: result,
|
|
66
|
+
isLoading: status === "loading",
|
|
67
|
+
};
|
|
68
|
+
};
|
|
32
69
|
export const useUserGroup = (userGroupId, organizationId, onSuccess) => {
|
|
33
70
|
const [userGroup, setUserGroup] = useState();
|
|
34
71
|
const backend = useBackendStrict();
|
|
@@ -243,6 +243,42 @@ export declare const messages: {
|
|
|
243
243
|
emptyDetailValue: {
|
|
244
244
|
id: string;
|
|
245
245
|
};
|
|
246
|
+
userLanguagesTitle: {
|
|
247
|
+
id: string;
|
|
248
|
+
};
|
|
249
|
+
userInterfaceLanguage: {
|
|
250
|
+
id: string;
|
|
251
|
+
};
|
|
252
|
+
userMetadataLanguage: {
|
|
253
|
+
id: string;
|
|
254
|
+
};
|
|
255
|
+
userDataLanguage: {
|
|
256
|
+
id: string;
|
|
257
|
+
};
|
|
258
|
+
userLanguageNotSet: {
|
|
259
|
+
id: string;
|
|
260
|
+
};
|
|
261
|
+
userLanguageNotSetOption: {
|
|
262
|
+
id: string;
|
|
263
|
+
};
|
|
264
|
+
userInterfaceLanguageNotSetTooltip: {
|
|
265
|
+
id: string;
|
|
266
|
+
};
|
|
267
|
+
userMetadataLanguageNotSetTooltip: {
|
|
268
|
+
id: string;
|
|
269
|
+
};
|
|
270
|
+
userDataLanguageNotSetTooltip: {
|
|
271
|
+
id: string;
|
|
272
|
+
};
|
|
273
|
+
userLanguageOption: {
|
|
274
|
+
id: string;
|
|
275
|
+
};
|
|
276
|
+
userLanguageNotSupported: {
|
|
277
|
+
id: string;
|
|
278
|
+
};
|
|
279
|
+
userLanguagesLoadError: {
|
|
280
|
+
id: string;
|
|
281
|
+
};
|
|
246
282
|
closeEditMode: {
|
|
247
283
|
id: string;
|
|
248
284
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/locales.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB;;QACjB,EAAE;;;QACF,EAAE;;;QACL,EAAE;;;QACE,EAAE;;CACnB,CAAC;AAEH,eAAO,MAAM,2BAA2B;;QACtB,EAAE;;;QACP,EAAE;;;QACA,EAAE;;;QACE,EAAE;;CACnB,CAAC;AAEH,eAAO,MAAM,QAAQ;;QACa,EAAE;;;QACP,EAAE;;;QACF,EAAE;;;QACQ,EAAE;;;QACX,EAAE;;;QACF,EAAE;;;QACD,EAAE;;;QACF,EAAE;;;QACF,EAAE;;;QACF,EAAE;;;QACJ,EAAE;;;QACC,EAAE;;;QACH,EAAE;;;QACC,EAAE;;;QACC,EAAE;;;QACH,EAAE;;;QACb,EAAE;;;QACD,EAAE;;;QACF,EAAE;;;QACD,EAAE;;;QACA,EAAE;;;QACJ,EAAE;;;QACC,EAAE;;;QACJ,EAAE;;;QACO,EAAE;;;QACJ,EAAE;;;QACK,EAAE;;;QACJ,EAAE;;;QACX,EAAE;;;QACF,EAAE;;;QACH,EAAE;;;QACF,EAAE;;;QACF,EAAE;;;QACH,EAAE;;;QACF,EAAE;;;QACD,EAAE;;;QACF,EAAE;;;QACD,EAAE;;;QACH,EAAE;;;QACP,EAAE;;;QACF,EAAE;;;QACU,EAAE;;;QACF,EAAE;;;QACZ,EAAE;;;QACF,EAAE;;;QACI,EAAE;;;QACF,EAAE;;;QACG,EAAE;;;QACF,EAAE;;;QACd,EAAE;;;QACF,EAAE;;;QACP,EAAE;;;QACc,EAAE;;;QACjB,EAAE;;;QACG,EAAE;;;QACP,EAAE;;;QACG,EAAE;;;QACC,EAAE;;;QACH,EAAE;;;QACE,EAAE;;;QACJ,EAAE;;;QACH,EAAE;;;QACG,EAAE;;;QACF,EAAE;;;QACC,EAAE;;;QACN,EAAE;;;QACA,EAAE;;;QACH,EAAE;;;QAClB,EAAE;;;QACM,EAAE;;;QACH,EAAE;;;QACJ,EAAE;;;
|
|
1
|
+
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/locales.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB;;QACjB,EAAE;;;QACF,EAAE;;;QACL,EAAE;;;QACE,EAAE;;CACnB,CAAC;AAEH,eAAO,MAAM,2BAA2B;;QACtB,EAAE;;;QACP,EAAE;;;QACA,EAAE;;;QACE,EAAE;;CACnB,CAAC;AAEH,eAAO,MAAM,QAAQ;;QACa,EAAE;;;QACP,EAAE;;;QACF,EAAE;;;QACQ,EAAE;;;QACX,EAAE;;;QACF,EAAE;;;QACD,EAAE;;;QACF,EAAE;;;QACF,EAAE;;;QACF,EAAE;;;QACJ,EAAE;;;QACC,EAAE;;;QACH,EAAE;;;QACC,EAAE;;;QACC,EAAE;;;QACH,EAAE;;;QACb,EAAE;;;QACD,EAAE;;;QACF,EAAE;;;QACD,EAAE;;;QACA,EAAE;;;QACJ,EAAE;;;QACC,EAAE;;;QACJ,EAAE;;;QACO,EAAE;;;QACJ,EAAE;;;QACK,EAAE;;;QACJ,EAAE;;;QACX,EAAE;;;QACF,EAAE;;;QACH,EAAE;;;QACF,EAAE;;;QACF,EAAE;;;QACH,EAAE;;;QACF,EAAE;;;QACD,EAAE;;;QACF,EAAE;;;QACD,EAAE;;;QACH,EAAE;;;QACP,EAAE;;;QACF,EAAE;;;QACU,EAAE;;;QACF,EAAE;;;QACZ,EAAE;;;QACF,EAAE;;;QACI,EAAE;;;QACF,EAAE;;;QACG,EAAE;;;QACF,EAAE;;;QACd,EAAE;;;QACF,EAAE;;;QACP,EAAE;;;QACc,EAAE;;;QACjB,EAAE;;;QACG,EAAE;;;QACP,EAAE;;;QACG,EAAE;;;QACC,EAAE;;;QACH,EAAE;;;QACE,EAAE;;;QACJ,EAAE;;;QACH,EAAE;;;QACG,EAAE;;;QACF,EAAE;;;QACC,EAAE;;;QACN,EAAE;;;QACA,EAAE;;;QACH,EAAE;;;QAClB,EAAE;;;QACM,EAAE;;;QACH,EAAE;;;QACJ,EAAE;;;QACA,EAAE;;;QACC,EAAE;;;QACH,EAAE;;;QACN,EAAE;;;QACA,EAAE;;;QACI,EAAE;;;QACQ,EAAE;;;QACH,EAAE;;;QACN,EAAE;;;QACb,EAAE;;;QACI,EAAE;;;QACJ,EAAE;;;QACX,EAAE;;;QACE,EAAE;;;QACR,EAAE;;;QACK,EAAE;;;QACH,EAAE;;;QACK,EAAE;;;QACb,EAAE;;;QACH,EAAE;;;QACL,EAAE;;;QACL,EAAE;;;QACK,EAAE;;;QACJ,EAAE;;;QACC,EAAE;;;QACC,EAAE;;;QACK,EAAE;;;QACH,EAAE;;;QACI,EAAE;;;QACH,EAAE;;;QACR,EAAE;;;QACE,EAAE;;;QACR,EAAE;;;QACJ,EAAE;;;QACI,EAAE;;;QACH,EAAE;;;QACR,EAAE;;;QACE,EAAE;;;QACR,EAAE;;;QACM,EAAE;;;QACI,EAAE;;;QACH,EAAE;;;QACN,EAAE;;;QACJ,EAAE;;;QACD,EAAE;;;QACC,EAAE;;;QACF,EAAE;;;QACG,EAAE;;;QACX,EAAE;;;QACP,EAAE;;;QACF,EAAE;;;QACG,EAAE;;;QACF,EAAE;;;QACG,EAAE;;;QACG,EAAE;;;QACX,EAAE;;;QACH,EAAE;;;QACM,EAAE;;;QACR,EAAE;;;QACC,EAAE;;;QACM,EAAE;;;QACR,EAAE;;;QACrB,EAAE;;;QACG,EAAE;;;QACR,EAAE;;;QACmB,EAAE;;;QACG,EAAE;;;QACT,EAAE;;;QACG,EAAE;;;QACX,EAAE;;;QACF,EAAE;;;QACH,EAAE;;;QACF,EAAE;;;QACD,EAAE;;;QACC,EAAE;;CACnC,CAAC"}
|
|
@@ -85,6 +85,18 @@ export const messages = defineMessages({
|
|
|
85
85
|
confirmDeleteButton: { id: "userManagement.deleteDialog.confirmButton" },
|
|
86
86
|
cancelDeleteButton: { id: "userManagement.deleteDialog.cancelButton" },
|
|
87
87
|
emptyDetailValue: { id: "userManagement.userDetail.emptyValue" },
|
|
88
|
+
userLanguagesTitle: { id: "userManagement.userDetail.languages.title" },
|
|
89
|
+
userInterfaceLanguage: { id: "userManagement.userDetail.interfaceLanguage.label" },
|
|
90
|
+
userMetadataLanguage: { id: "userManagement.userDetail.metadataLanguage.label" },
|
|
91
|
+
userDataLanguage: { id: "userManagement.userDetail.dataLanguage.label" },
|
|
92
|
+
userLanguageNotSet: { id: "userManagement.userDetail.language.notSet" },
|
|
93
|
+
userLanguageNotSetOption: { id: "userManagement.userDetail.language.notSetOption" },
|
|
94
|
+
userInterfaceLanguageNotSetTooltip: { id: "userManagement.userDetail.interfaceLanguage.notSet.tooltip" },
|
|
95
|
+
userMetadataLanguageNotSetTooltip: { id: "userManagement.userDetail.metadataLanguage.notSet.tooltip" },
|
|
96
|
+
userDataLanguageNotSetTooltip: { id: "userManagement.userDetail.dataLanguage.notSet.tooltip" },
|
|
97
|
+
userLanguageOption: { id: "userManagement.userDetail.language.option" },
|
|
98
|
+
userLanguageNotSupported: { id: "userManagement.userDetail.interfaceLanguage.notSupported" },
|
|
99
|
+
userLanguagesLoadError: { id: "userManagement.userDetail.languages.loadError" },
|
|
88
100
|
closeEditMode: { id: "userManagement.userDetail.cancelButton" },
|
|
89
101
|
saveEditedDetails: { id: "userManagement.userDetail.saveButton" },
|
|
90
102
|
userIsAdmin: { id: "userManagement.detail.orgPermission.admin" },
|
package/esm/sdk-ui-ext.d.ts
CHANGED
|
@@ -2134,6 +2134,7 @@ export declare interface IUserEditDialogProps extends IWithTelemetryProps {
|
|
|
2134
2134
|
isCreateVisualizationWorkspacePermissionEnabled?: boolean;
|
|
2135
2135
|
areComputedAttributesEnabled?: boolean;
|
|
2136
2136
|
areVisualizationPermissionsEnabled?: boolean;
|
|
2137
|
+
isLocalizationEnabled?: boolean;
|
|
2137
2138
|
selectedTab?: UserTabId;
|
|
2138
2139
|
}
|
|
2139
2140
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gooddata/sdk-ui-ext",
|
|
3
|
-
"version": "11.63.0-alpha.
|
|
3
|
+
"version": "11.63.0-alpha.4",
|
|
4
4
|
"description": "GoodData.UI SDK - Extensions",
|
|
5
5
|
"license": "LicenseRef-LICENSE",
|
|
6
6
|
"author": "GoodData Corporation",
|
|
@@ -63,20 +63,20 @@
|
|
|
63
63
|
"ts-invariant": "0.10.3",
|
|
64
64
|
"tslib": "2.8.1",
|
|
65
65
|
"uuid": "11.1.1",
|
|
66
|
-
"@gooddata/sdk-backend-base": "11.63.0-alpha.
|
|
67
|
-
"@gooddata/sdk-backend-spi": "11.63.0-alpha.
|
|
68
|
-
"@gooddata/sdk-embedding": "11.63.0-alpha.
|
|
69
|
-
"@gooddata/sdk-ui": "11.63.0-alpha.
|
|
70
|
-
"@gooddata/sdk-
|
|
71
|
-
"@gooddata/sdk-ui-
|
|
72
|
-
"@gooddata/sdk-
|
|
73
|
-
"@gooddata/sdk-ui-geo": "11.63.0-alpha.
|
|
74
|
-
"@gooddata/sdk-ui-
|
|
75
|
-
"@gooddata/sdk-ui-
|
|
76
|
-
"@gooddata/sdk-ui-semantic-search": "11.63.0-alpha.
|
|
77
|
-
"@gooddata/sdk-ui-theme-provider": "11.63.0-alpha.
|
|
78
|
-
"@gooddata/
|
|
79
|
-
"@gooddata/
|
|
66
|
+
"@gooddata/sdk-backend-base": "11.63.0-alpha.4",
|
|
67
|
+
"@gooddata/sdk-backend-spi": "11.63.0-alpha.4",
|
|
68
|
+
"@gooddata/sdk-embedding": "11.63.0-alpha.4",
|
|
69
|
+
"@gooddata/sdk-ui-charts": "11.63.0-alpha.4",
|
|
70
|
+
"@gooddata/sdk-ui": "11.63.0-alpha.4",
|
|
71
|
+
"@gooddata/sdk-ui-filters": "11.63.0-alpha.4",
|
|
72
|
+
"@gooddata/sdk-model": "11.63.0-alpha.4",
|
|
73
|
+
"@gooddata/sdk-ui-geo": "11.63.0-alpha.4",
|
|
74
|
+
"@gooddata/sdk-ui-kit": "11.63.0-alpha.4",
|
|
75
|
+
"@gooddata/sdk-ui-pivot": "11.63.0-alpha.4",
|
|
76
|
+
"@gooddata/sdk-ui-semantic-search": "11.63.0-alpha.4",
|
|
77
|
+
"@gooddata/sdk-ui-theme-provider": "11.63.0-alpha.4",
|
|
78
|
+
"@gooddata/util": "11.63.0-alpha.4",
|
|
79
|
+
"@gooddata/sdk-ui-vis-commons": "11.63.0-alpha.4"
|
|
80
80
|
},
|
|
81
81
|
"devDependencies": {
|
|
82
82
|
"@microsoft/api-documenter": "7.30.16",
|
|
@@ -120,12 +120,12 @@
|
|
|
120
120
|
"svgo": "2.8.4",
|
|
121
121
|
"typescript": "7.0.2",
|
|
122
122
|
"vitest": "5.0.4",
|
|
123
|
-
"@gooddata/eslint-config": "11.63.0-alpha.
|
|
124
|
-
"@gooddata/i18n-toolkit": "11.63.0-alpha.
|
|
125
|
-
"@gooddata/oxlint-config": "11.63.0-alpha.
|
|
126
|
-
"@gooddata/
|
|
127
|
-
"@gooddata/
|
|
128
|
-
"@gooddata/
|
|
123
|
+
"@gooddata/eslint-config": "11.63.0-alpha.4",
|
|
124
|
+
"@gooddata/i18n-toolkit": "11.63.0-alpha.4",
|
|
125
|
+
"@gooddata/oxlint-config": "11.63.0-alpha.4",
|
|
126
|
+
"@gooddata/reference-workspace": "11.63.0-alpha.4",
|
|
127
|
+
"@gooddata/sdk-backend-mockingbird": "11.63.0-alpha.4",
|
|
128
|
+
"@gooddata/stylelint-config": "11.63.0-alpha.4"
|
|
129
129
|
},
|
|
130
130
|
"peerDependencies": {
|
|
131
131
|
"react": "^18.0.0 || ^19.0.0",
|
package/styles/css/main.css
CHANGED
|
@@ -432,6 +432,16 @@
|
|
|
432
432
|
gap: 20px;
|
|
433
433
|
}
|
|
434
434
|
|
|
435
|
+
.gd-user-management-dialog-detail-localization .gd-user-management-dialog-detail-row .input-checkbox-label {
|
|
436
|
+
margin: 0;
|
|
437
|
+
vertical-align: top;
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
.gd-user-management-dialog-detail-row-checkbox-edit {
|
|
441
|
+
align-items: center;
|
|
442
|
+
min-height: 32px;
|
|
443
|
+
}
|
|
444
|
+
|
|
435
445
|
.gd-user-management-dialog-detail-label {
|
|
436
446
|
width: 150px;
|
|
437
447
|
color: #6d7680;
|
|
@@ -611,6 +621,48 @@
|
|
|
611
621
|
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
612
622
|
}
|
|
613
623
|
|
|
624
|
+
.gd-user-management-dialog-detail-section-title {
|
|
625
|
+
display: flex;
|
|
626
|
+
align-items: center;
|
|
627
|
+
gap: 10px;
|
|
628
|
+
height: 28px;
|
|
629
|
+
margin-top: 20px;
|
|
630
|
+
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
631
|
+
font-size: 11px;
|
|
632
|
+
font-weight: 700;
|
|
633
|
+
text-transform: uppercase;
|
|
634
|
+
}
|
|
635
|
+
.gd-user-management-dialog-detail-section-title::after {
|
|
636
|
+
content: "";
|
|
637
|
+
flex: 1;
|
|
638
|
+
border-top: 1px solid var(--gd-palette-complementary-3, #dde4eb);
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
.gd-user-management-dialog-detail-code {
|
|
642
|
+
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
643
|
+
}
|
|
644
|
+
.gd-user-management-dialog-detail-input .gd-user-management-dialog-detail-code {
|
|
645
|
+
font-size: 12px;
|
|
646
|
+
}
|
|
647
|
+
|
|
648
|
+
.gd-user-management-dialog-detail-value-not-set {
|
|
649
|
+
display: flex;
|
|
650
|
+
align-items: center;
|
|
651
|
+
gap: 5px;
|
|
652
|
+
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
653
|
+
}
|
|
654
|
+
.gd-user-management-dialog-detail-value-not-set .gd-bubble-trigger {
|
|
655
|
+
display: inline-flex;
|
|
656
|
+
}
|
|
657
|
+
|
|
658
|
+
.gd-message.gd-user-management-dialog-detail-notice {
|
|
659
|
+
align-self: flex-start;
|
|
660
|
+
margin-left: 170px;
|
|
661
|
+
padding: 4px 10px;
|
|
662
|
+
font-size: 12px;
|
|
663
|
+
line-height: 16px;
|
|
664
|
+
}
|
|
665
|
+
|
|
614
666
|
.gd-attribute-hierarchy-detail-panel {
|
|
615
667
|
width: 200px;
|
|
616
668
|
padding: 8px 5px;
|
package/styles/css/main.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../node_modules/@gooddata/sdk-ui-kit/src/@ui/defaultTheme.scss","../internal/scss/dashboard_embedding.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss","../internal/scss/variables.scss","../internal/scss/user_management_dialogs.scss","../internal/scss/attribute_hierarchies.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/mixins.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/Bubble/_variables.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/bubble.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/overlay.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/typo-mixins.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/tabs.scss","../../node_modules/@gooddata/sdk-ui-kit/src/@ui/UiIcon/UiIcon.scss","../../node_modules/@gooddata/sdk-ui-kit/src/@ui/UiButton/UiButton.scss","../../node_modules/react-loading-skeleton/dist/skeleton.css","../../node_modules/@gooddata/sdk-ui-kit/src/@ui/UiSkeleton/UiSkeleton.scss","../../node_modules/@gooddata/sdk-ui-kit/src/@ui/UiPagedVirtualList/UiPagedVirtualList.scss","../../src/notificationsPanel/components/DetailsDialog.scss","../../src/notificationsPanel/NotificationsPanel/DefaultNotificationsPanel.scss","../../src/notificationsPanel/NotificationsPanel/DefaultNotificationsPanelHeader.scss","../../src/notificationsPanel/NotificationsPanel/DefaultNotificationsPanelButton.scss","../../src/notificationsPanel/NotificationsList/DefaultNotificationsList.scss","../../src/notificationsPanel/NotificationsList/DefaultNotificationsListEmptyState.scss","../../src/notificationsPanel/NotificationsList/DefaultNotificationsListErrorState.scss","../../src/notificationsPanel/Notification/DefaultNotification.scss","../../src/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetailDialog.scss","../../src/notificationsPanel/NotificationTriggersDetail/NotificationTriggersDetailDialog.scss","../automations/automations.scss","../internal/scss/insightPicker.scss","../internal/scss/conditional_formatting.scss"],"names":[],"mappings":"AAIA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EAGA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;EAGA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EAGA;EACA;EAGA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AC3VJ;EACI;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA,aCiFc;EDhFd,kBCGa;;;ADAjB;EACI;EACA;EACA;EACA;EACA;;AAEA;EAPJ;IAQQ;IACA;;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA,aEqBuB;EFpBvB;EACA,YEtB2C;EFuB3C,OE3BuC;;;ACnB3C;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAIA;EACI,OFqBkB;;;AEhBtB;EACI;EACA;;AAGJ;EACI;EACA;;;AAKJ;EACI;EACA;EACA;;;AAIR;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA,OF3CoB;;;AE8CxB;EACI;EACA;EACA;;AAEA;EACI;EACA;;;AAIR;EACI;EACA;EACA;;;AAGJ;EACI,OFpEgB;EEqEhB;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;;;AAIR;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;AAEA;EACI;EACA;;;AAIR;EACI;EACA,OFxHgB;EEyHhB;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;AAEA;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA,OFtJe;EEuJf;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;AAEA;EACI;EACA;;AAGJ;EACI;;AAIR;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;;;AAKJ;EACI;EACA;;AAGJ;EACI;EACA;;AAEA;EACI;;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA,OFtNmB;EEuNnB;EACA;EACA;EACA;;;AAOA;AAAA;EAEI;;;AAOJ;EACI;;AAIJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;ACpRR;EACI;EACA;EACA;EACA;EACA,OH6BY;;AG3BZ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA,OH2LS;EG1LT;;AAGJ;EACI;EACA;EACA;EACA;EACA,OHEe;;AGCnB;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;;;AAIR;EACI;EAGA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;;AAIA;EACI;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAEA;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;AAAA;AAAA;AAAA;EAII;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EACI;;AAIR;EACI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAGJ;EACI;;;AAMhB;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;;AAKZ;EACI;;AAEA;EACI;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;;AAQR;AAAA;AAAA;EACI;EACA;EACA;EACA;;AAGJ;AAAA;AAAA;EACI;EACA;EACA;EACA;;AAGJ;AAAA;AAAA;EACI;EACA;EACA;EACA;;;AAKJ;EACI;;AAEA;EACI;EACA;;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA,YACI;EAEJ;;;ACpNJ;AA4DA;ACjLA;AAAA;AAAA;ACAA;AAAA;AAAA;AAIA;EACI;EACA;;;AAIJ;EACI;EACA;EACA;EACA,ODFgB;;ACIhB;EACI;;AFwJJ;EEpJI;;AF4IJ;EExII,ODZkB;ECalB;;;AAIR;EACI;EACA,WD5Be;ED0Df,0BE5B2B;EF6B3B,6BE7B2B;EF8B3B,qBE9B2B;EFkC3B,0BElCoC;EFmCpC,6BEnCoC;EFoCpC,qBEpCoC;EFwCpC,iCExC0C;EFyC1C,oCEzC0C;EF0C1C,4BE1C0C;;AAE1C;EACI,WDhCiB;;ACmCrB;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EFVA,SEYwB;;AAG5B;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EFVZ,0BEYuC;EFXvC,6BEWuC;EFVvC,qBEUuC;EFNvC,0BEM4C;EFL5C,6BEK4C;EFJ5C,qBEI4C;EFA5C;EACA,oCEDmD;EFEnD,4BEFmD;;AAEvC;EACI;;AAIR;AAAA;AAAA;EAGI;;AAGJ;EACI;;AAGJ;EACI;;AAKZ;EACI;;AAyCA;EACI;EACA;EACA;EACA,cDjIS;ECkIT,cDjIM;EDEV;;AE0IQ;EACI;;AAOZ;EACI,ODlIW;ECmIX,YDtJM;;ACwJN;AAAA;EAEI;;AAKJ;EACI,kBDhKE;;ACmKN;EACI,kBDpKE;;ACyKN;EACI,qBD1KE;;AC6KN;EACI,qBD9KE;;ACmLN;EACI,oBDpLE;;ACuLN;EACI,oBDxLE;;AC6LN;EACI,mBD9LE;;ACiMN;EACI,mBDlME;;AC4HV;EACI;EACA;EACA;EACA,cDjIS;ECkIT,cD1HY;EDLhB;;AE0IQ;EACI;;AAOZ;EACI,ONhIU;EMiIV,YD/IY;;ACiJZ;AAAA;EAEI;;AAKJ;EACI,kBDzJQ;;AC4JZ;EACI,kBD7JQ;;ACkKZ;EACI,qBDnKQ;;ACsKZ;EACI,qBDvKQ;;AC4KZ;EACI,oBD7KQ;;ACgLZ;EACI,oBDjLQ;;ACsLZ;EACI,mBDvLQ;;AC0LZ;EACI,mBD3LQ;;ACqHhB;EACI;EACA;EACA;EACA,cDjIS;ECkIT,cDjIM;EDEV;;AE0IQ;EACI;;AAOZ;EACI,ODlIW;ECmIX,YDtJM;;ACwJN;AAAA;EAEI;;AAKJ;EACI,kBDhKE;;ACmKN;EACI,kBDpKE;;ACyKN;EACI,qBD1KE;;AC6KN;EACI,qBD9KE;;ACmLN;EACI,oBDpLE;;ACuLN;EACI,oBDxLE;;AC6LN;EACI,mBD9LE;;ACiMN;EACI,mBDlME;;AC4HV;EACI;EACA;EACA;EACA,cDjGe;ECkGf,cDhHe;EDfnB;;AEkJA;EACI,ODrHS;ECsHT,YD3IQ;;AC6IR;AAAA;EAEI;;AAKJ;EACI,kBD/IW;;ACkJf;EACI,kBDzJI;;AC8JR;EACI,qBDzJW;;AC4Jf;EACI,qBDnKI;;ACwKR;EACI,oBDnKW;;ACsKf;EACI,oBD7KI;;ACkLR;EACI,mBD7KW;;ACgLf;EACI,mBDvLI;;ACiHZ;EACI;EACA;EACA;EACA,cDjIS;ECkIT,cDrHU;EDVd;;AE0IQ;EACI;;AAOZ;EACI,ONhIU;EMiIV,YD1IU;;AC4IV;AAAA;EAEI;;AAKJ;EACI,kBDpJM;;ACuJV;EACI,kBDxJM;;AC6JV;EACI,qBD9JM;;ACiKV;EACI,qBDlKM;;ACuKV;EACI,oBDxKM;;AC2KV;EACI,oBD5KM;;ACiLV;EACI,mBDlLM;;ACqLV;EACI,mBDtLM;;ACgHd;EACI;EACA;EACA;EACA,cDjIS;ECkIT,cDpFW;ED3Cf;;AE0IQ;EACI;;AAOZ;EACI,ONh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CA;;AAGI;EAKI;EAEA;;AAIR;EACI;EACA;;AAGJ;EACI;;AAEJ;EACI;;AAIR;EACI;EACA;;AAEA;EACI;;AAIR;EAEI;EACA;EACA;EACA;EACA;;AAGI;EAII;;AAIR;EACI;;AAGJ;EACI;;AAEJ;EACI;;AAIR;EACI;EACA;EACA;EACA;;AAIJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGI;EAKI;EAEA;;AAIR;EACI;;AAGJ;EACI;;AAEJ;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAGI;EAEI;EACA;EACA;;AAIJ;EAEI;EACA;EACA;;AAKR;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EAEA;EACA;EACA;EACA;;AAGI;EAII;EACA;EAEA;;AAIR;EACI;EACA;EACA;;;AC1UhB;EACE;IACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EASA;EAEA;EACA;EACA;EACA;EACA;;;AAGF;EACE;IACE;;;ACnDJ;EACI;EACA;EACA;;AAEA;EACI;EACA;;AAIA;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;ACzCR;EAGI;EACA;EACA;EACA;EACA;EACA;;AAGI;EACI;;AAEA;EV4NR;EACA;EACA;;AU1NY;EAJJ;IAKQ;;;AAMhB;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;;AAIA;EACI;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;EACA;;AAMhB;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;;;AChFR;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;ACjDR;EACI;EACA;EACA;EAEA;EAEA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EAEA;;;AClBJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;AAEA;EACI;EACA;EAEA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AC5BR;EACI;EACA;EACA;EACA;EACA;;AAEA;EAEI;;AAGJ;EAII;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACjCR;EACI;EACA;EACA;EACA;EACA;EACA;;;ACNJ;EACI;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EACA;;;ACjBJ;EACI;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EACA;;;ACjBJ;EAGI;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EACA;EAEA;EACA;EAEA;EAEA;;AAGI;EACI;;AAIA;EACI;;AAGJ;EACI;;AAIR;EACI;;AAIR;EACI;;AAGJ;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;;AAGJ;EACI;EACA;EACA;EAEA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;;AAIR;EACI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;;;ACjLR;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;EAEA;EACA;EACA;;AAGJ;EACI;EAEA;EACA;EACA;;;ACxBR;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EAEA;EACA;EAEA;EACA;EACA;EAEA;EAEA;;AAGJ;EACI;EACA;EAEA;EAEA;EACA;EACA;EAEA;;AAGJ;EAEI;EACA;EACA;EAEA;EAEA;EACA;EACA;EAEA;EAEA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;;;ACxER;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;AAEA;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAIA;EACI;;AAKZ;EACI;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EAEI;EACA;EACA;;;AAIR;EACI;EACA;;AAGI;EACI;;;ACvEZ;EACI;;;AAOA;EACI;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAEA;EACI;;AAIR;EACI;;AAGJ;EACI;;;AAKZ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EAGA;;AAEA;EACI;;AAGJ;EACI;;AAGA;EACI;;AAMR;EACI;;AAEA;EACI;;;AASZ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAKR;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;;;AAIA;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACI;EACA;EACA;EACA,YACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;;AAKJ;EAEI;EACA;;;AC1PR;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAKJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;;AAMR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;;AAEA;EACI;;;AAKR;EACI;;;AAGJ;AAAA;EAEI;;;AAGJ;AAAA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;;AAaJ;EACI;EACA;EACA;EACA;EACA;EACA,YACI;;AAKJ;EACI;EACA;EACA;;AAKJ;EA3BA;EACA;EACA,YACI;EA2BA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAKJ;EACI;EACA;EACA;EACA;;AAGJ;EAEI;;;AAOR;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;;;AAMR;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EAEI;EACA;EACA;EACA;;AAIA;EACI;;AAIR;EACI;EACA;EACA;;AAIA;AAAA;AAAA;EAGI;;AAIR;EACI;EACA;EACA;;AAKJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA,YACI;;AAMJ;EACI;;AAGJ;EACI;EACA;;AAKJ;EAjRA;EACA;EACA,YACI;EAiRA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;;AAOR;EACI;EACA;;;AAKJ;EACI;;;AAOJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI","file":"main.css"}
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../../node_modules/@gooddata/sdk-ui-kit/src/@ui/defaultTheme.scss","../internal/scss/dashboard_embedding.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss","../internal/scss/variables.scss","../internal/scss/user_management_dialogs.scss","../internal/scss/attribute_hierarchies.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/mixins.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/Bubble/_variables.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/bubble.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/overlay.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/typo-mixins.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/tabs.scss","../../node_modules/@gooddata/sdk-ui-kit/src/@ui/UiIcon/UiIcon.scss","../../node_modules/@gooddata/sdk-ui-kit/src/@ui/UiButton/UiButton.scss","../../node_modules/react-loading-skeleton/dist/skeleton.css","../../node_modules/@gooddata/sdk-ui-kit/src/@ui/UiSkeleton/UiSkeleton.scss","../../node_modules/@gooddata/sdk-ui-kit/src/@ui/UiPagedVirtualList/UiPagedVirtualList.scss","../../src/notificationsPanel/components/DetailsDialog.scss","../../src/notificationsPanel/NotificationsPanel/DefaultNotificationsPanel.scss","../../src/notificationsPanel/NotificationsPanel/DefaultNotificationsPanelHeader.scss","../../src/notificationsPanel/NotificationsPanel/DefaultNotificationsPanelButton.scss","../../src/notificationsPanel/NotificationsList/DefaultNotificationsList.scss","../../src/notificationsPanel/NotificationsList/DefaultNotificationsListEmptyState.scss","../../src/notificationsPanel/NotificationsList/DefaultNotificationsListErrorState.scss","../../src/notificationsPanel/Notification/DefaultNotification.scss","../../src/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetailDialog.scss","../../src/notificationsPanel/NotificationTriggersDetail/NotificationTriggersDetailDialog.scss","../automations/automations.scss","../internal/scss/insightPicker.scss","../internal/scss/conditional_formatting.scss"],"names":[],"mappings":"AAIA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EAGA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;EAGA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EAGA;EACA;EAGA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AC3VJ;EACI;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA,aCiFc;EDhFd,kBCGa;;;ADAjB;EACI;EACA;EACA;EACA;EACA;;AAEA;EAPJ;IAQQ;IACA;;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA,aEqBuB;EFpBvB;EACA,YEtB2C;EFuB3C,OE3BuC;;;ACnB3C;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAIA;EACI,OFqBkB;;;AEhBtB;EACI;EACA;;AAGJ;EACI;EACA;;;AAKJ;EACI;EACA;EACA;;;AAIR;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA,OFrDoB;;;AEwDxB;EACI;EACA;EACA;;AAEA;EACI;EACA;;;AAIR;EACI;EACA;EACA;;;AAGJ;EACI,OF9EgB;EE+EhB;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;;;AAIR;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;AAEA;EACI;EACA;;;AAIR;EACI;EACA,OFlIgB;EEmIhB;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;AAEA;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA,OFhKe;EEiKf;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;AAEA;EACI;EACA;;AAGJ;EACI;;AAIR;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;;;AAKJ;EACI;EACA;;AAGJ;EACI;EACA;;AAEA;EACI;;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA,OFhOmB;EEiOnB;EACA;EACA;EACA;;;AAOA;AAAA;EAEI;;;AAOJ;EACI;;AAIJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA,OF7QmB;EE8QnB;EACA;EACA;;AAEA;EACI;EACA;EACA;;;AAIR;EACI,OF1RmB;;AE4RnB;EACI;;;AAIR;EACI;EACA;EACA;EACA,OFrSmB;;AEuSnB;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;;;AC5UJ;EACI;EACA;EACA;EACA;EACA,OH6BY;;AG3BZ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA,OH2LS;EG1LT;;AAGJ;EACI;EACA;EACA;EACA;EACA,OHEe;;AGCnB;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;;;AAIR;EACI;EAGA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;;AAIA;EACI;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAEA;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;AAAA;AAAA;AAAA;EAII;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EACI;;AAIR;EACI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAGJ;EACI;;;AAMhB;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;;AAKZ;EACI;;AAEA;EACI;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;;AAQR;AAAA;AAAA;EACI;EACA;EACA;EACA;;AAGJ;AAAA;AAAA;EACI;EACA;EACA;EACA;;AAGJ;AAAA;AAAA;EACI;EACA;EACA;EACA;;;AAKJ;EACI;;AAEA;EACI;EACA;;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA,YACI;EAEJ;;;ACpNJ;AA4DA;ACjLA;AAAA;AAAA;ACAA;AAAA;AAAA;AAIA;EACI;EACA;;;AAIJ;EACI;EACA;EACA;EACA,ODFgB;;ACIhB;EACI;;AFwJJ;EEpJI;;AF4IJ;EExII,ODZkB;ECalB;;;AAIR;EACI;EACA,WD5Be;ED0Df,0BE5B2B;EF6B3B,6BE7B2B;EF8B3B,qBE9B2B;EFkC3B,0BElCoC;EFmCpC,6BEnCoC;EFoCpC,qBEpCoC;EFwCpC,iCExC0C;EFyC1C,oCEzC0C;EF0C1C,4BE1C0C;;AAE1C;EACI,WDhCiB;;ACmCrB;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EFVA,SEYwB;;AAG5B;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EFVZ,0BEYuC;EFXvC,6BEWuC;EFVvC,qBEUuC;EFNvC,0BEM4C;EFL5C,6BEK4C;EFJ5C,qBEI4C;EFA5C;EACA,oCEDmD;EFEnD,4BEFmD;;AAEvC;EACI;;AAIR;AAAA;AAAA;EAGI;;AAGJ;EACI;;AAGJ;EACI;;AAKZ;EACI;;AAyCA;EACI;EACA;EACA;EACA,cDjIS;ECkIT,cDjIM;EDEV;;AE0IQ;EACI;;AAOZ;EACI,ODlIW;ECmIX,YDtJM;;ACwJN;AAAA;EAEI;;AAKJ;EACI,kBDhKE;;ACmKN;EACI,kBDpKE;;ACyKN;EACI,qBD1KE;;AC6KN;EACI,qBD9KE;;ACmLN;EACI,oBDpLE;;ACuLN;EACI,oBDxLE;;AC6LN;EACI,mBD9LE;;ACiMN;EACI,mBDlME;;AC4HV;EACI;EACA;EACA;EACA,cDjIS;ECkIT,cD1HY;EDLhB;;AE0IQ;EACI;;AAOZ;EACI,ONhIU;EMiIV,YD/IY;;ACiJZ;AAAA;EAEI;;AAKJ;EACI,kBDzJQ;;AC4JZ;EACI,kBD7JQ;;ACkKZ;EACI,qBDnKQ;;ACsKZ;EACI,qBDvKQ;;AC4KZ;EACI,oBD7KQ;;ACgLZ;EACI,oBDjLQ;;ACsLZ;EACI,mBDvLQ;;AC0LZ;EACI,mBD3LQ;;ACqHhB;EACI;EACA;EACA;EACA,cDjIS;ECkIT,cDjIM;EDEV;;AE0IQ;EACI;;AAOZ;EACI,ODlIW;ECmIX,YDtJM;;ACwJN;AAAA;EAEI;;AAKJ;EACI,kBDhKE;;ACmKN;EACI,kBDpKE;;ACyKN;EACI,qBD1KE;;AC6KN;EACI,qBD9KE;;ACmLN;EACI,oBDpLE;;ACuLN;EACI,oBDxLE;;AC6LN;EACI,mBD9LE;;ACiMN;EACI,mBDlME;;AC4HV;EACI;EACA;EACA;EACA,cDjGe;ECkGf,cDhHe;EDfnB;;AEkJA;EACI,ODrHS;ECsHT,YD3IQ;;AC6IR;AAAA;EAEI;;AAKJ;EACI,kBD/IW;;ACkJf;EACI,kBDzJI;;AC8JR;EACI,qBDzJW;;AC4Jf;EACI,qBDnKI;;ACwKR;EACI,oBDnKW;;ACsKf;EACI,oBD7KI;;ACkLR;EACI,mBD7KW;;ACgLf;EACI,mBDvLI;;ACiHZ;EACI;EACA;EACA;EACA,cDjIS;ECkIT,cDrHU;EDVd;;AE0IQ;EACI;;AAOZ;EACI,ONhIU;EMiIV,YD1IU;;AC4IV;AAAA;EAEI;;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I;EACI;EACA;EACA;EACA;EACA;;AAGI;EAEI;EACA;;AAIJ;EAGI;EACA;;AAKR;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAGI;EAEI;EAEA;EACA;EACA;EACA;;AAIJ;EAGI;EAEA;EACA;EACA;EACA;;AAKR;EACI;EACA;EACA;;AAIR;EAEI;EACA;EACA;EACA;EACA;EACA;;AAGI;EAKI;EAEA;;AAIR;EACI;EACA;;AAGJ;EACI;;AAEJ;EACI;;AAIR;EACI;EACA;;AAEA;EACI;;AAIR;EAEI;EACA;EACA;EACA;EACA;;AAGI;EAII;;AAIR;EACI;;AAGJ;EACI;;AAEJ;EACI;;AAIR;EACI;EACA;EACA;EACA;;AAIJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGI;EAKI;EAEA;;AAIR;EACI;;AAGJ;EACI;;AAEJ;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAGI;EAEI;EACA;EACA;;AAIJ;EAEI;EACA;EACA;;AAKR;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EAEA;EACA;EACA;EACA;;AAGI;EAII;EACA;EAEA;;AAIR;EACI;EACA;EACA;;;AC1UhB;EACE;IACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EASA;EAEA;EACA;EACA;EACA;EACA;;;AAGF;EACE;IACE;;;ACnDJ;EACI;EACA;EACA;;AAEA;EACI;EACA;;AAIA;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;ACzCR;EAGI;EACA;EACA;EACA;EACA;EACA;;AAGI;EACI;;AAEA;EV4NR;EACA;EACA;;AU1NY;EAJJ;IAKQ;;;AAMhB;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;;AAIA;EACI;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;EACA;;AAMhB;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;;;AChFR;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;ACjDR;EACI;EACA;EACA;EAEA;EAEA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EAEA;;;AClBJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;AAEA;EACI;EACA;EAEA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AC5BR;EACI;EACA;EACA;EACA;EACA;;AAEA;EAEI;;AAGJ;EAII;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACjCR;EACI;EACA;EACA;EACA;EACA;EACA;;;ACNJ;EACI;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EACA;;;ACjBJ;EACI;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EACA;;;ACjBJ;EAGI;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EACA;EAEA;EACA;EAEA;EAEA;;AAGI;EACI;;AAIA;EACI;;AAGJ;EACI;;AAIR;EACI;;AAIR;EACI;;AAGJ;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;;AAGJ;EACI;EACA;EACA;EAEA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;;AAIR;EACI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;;;ACjLR;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;EAEA;EACA;EACA;;AAGJ;EACI;EAEA;EACA;EACA;;;ACxBR;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EAEA;EACA;EAEA;EACA;EACA;EAEA;EAEA;;AAGJ;EACI;EACA;EAEA;EAEA;EACA;EACA;EAEA;;AAGJ;EAEI;EACA;EACA;EAEA;EAEA;EACA;EACA;EAEA;EAEA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;;;ACxER;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;AAEA;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAIA;EACI;;AAKZ;EACI;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EAEI;EACA;EACA;;;AAIR;EACI;EACA;;AAGI;EACI;;;ACvEZ;EACI;;;AAOA;EACI;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAEA;EACI;;AAIR;EACI;;AAGJ;EACI;;;AAKZ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EAGA;;AAEA;EACI;;AAGJ;EACI;;AAGA;EACI;;AAMR;EACI;;AAEA;EACI;;;AASZ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAKR;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;;AAIR;EACI;EACA;EACA;;;AAIA;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACI;EACA;EACA;EACA,YACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;;AAKJ;EAEI;EACA;;;AC1PR;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAKJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;;AAMR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;;AAEA;EACI;;;AAKR;EACI;;;AAGJ;AAAA;EAEI;;;AAGJ;AAAA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;;AAaJ;EACI;EACA;EACA;EACA;EACA;EACA,YACI;;AAKJ;EACI;EACA;EACA;;AAKJ;EA3BA;EACA;EACA,YACI;EA2BA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAKJ;EACI;EACA;EACA;EACA;;AAGJ;EAEI;;;AAOR;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;;;AAMR;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EAEI;EACA;EACA;EACA;;AAIA;EACI;;AAIR;EACI;EACA;EACA;;AAIA;AAAA;AAAA;EAGI;;AAIR;EACI;EACA;EACA;;AAKJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA,YACI;;AAMJ;EACI;;AAGJ;EACI;EACA;;AAKJ;EAjRA;EACA;EACA,YACI;EAiRA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;;AAOR;EACI;EACA;;;AAKJ;EACI;;;AAOJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI","file":"main.css"}
|
|
@@ -60,6 +60,16 @@
|
|
|
60
60
|
gap: 20px;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
+
.gd-user-management-dialog-detail-localization .gd-user-management-dialog-detail-row .input-checkbox-label {
|
|
64
|
+
margin: 0;
|
|
65
|
+
vertical-align: top;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.gd-user-management-dialog-detail-row-checkbox-edit {
|
|
69
|
+
align-items: center;
|
|
70
|
+
min-height: 32px;
|
|
71
|
+
}
|
|
72
|
+
|
|
63
73
|
.gd-user-management-dialog-detail-label {
|
|
64
74
|
width: 150px;
|
|
65
75
|
color: #6d7680;
|
|
@@ -239,4 +249,46 @@
|
|
|
239
249
|
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
240
250
|
}
|
|
241
251
|
|
|
252
|
+
.gd-user-management-dialog-detail-section-title {
|
|
253
|
+
display: flex;
|
|
254
|
+
align-items: center;
|
|
255
|
+
gap: 10px;
|
|
256
|
+
height: 28px;
|
|
257
|
+
margin-top: 20px;
|
|
258
|
+
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
259
|
+
font-size: 11px;
|
|
260
|
+
font-weight: 700;
|
|
261
|
+
text-transform: uppercase;
|
|
262
|
+
}
|
|
263
|
+
.gd-user-management-dialog-detail-section-title::after {
|
|
264
|
+
content: "";
|
|
265
|
+
flex: 1;
|
|
266
|
+
border-top: 1px solid var(--gd-palette-complementary-3, #dde4eb);
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
.gd-user-management-dialog-detail-code {
|
|
270
|
+
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
271
|
+
}
|
|
272
|
+
.gd-user-management-dialog-detail-input .gd-user-management-dialog-detail-code {
|
|
273
|
+
font-size: 12px;
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
.gd-user-management-dialog-detail-value-not-set {
|
|
277
|
+
display: flex;
|
|
278
|
+
align-items: center;
|
|
279
|
+
gap: 5px;
|
|
280
|
+
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
281
|
+
}
|
|
282
|
+
.gd-user-management-dialog-detail-value-not-set .gd-bubble-trigger {
|
|
283
|
+
display: inline-flex;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
.gd-message.gd-user-management-dialog-detail-notice {
|
|
287
|
+
align-self: flex-start;
|
|
288
|
+
margin-left: 170px;
|
|
289
|
+
padding: 4px 10px;
|
|
290
|
+
font-size: 12px;
|
|
291
|
+
line-height: 16px;
|
|
292
|
+
}
|
|
293
|
+
|
|
242
294
|
/*# sourceMappingURL=user_management_dialogs.css.map */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../scss/user_management_dialogs.scss","../../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss"],"names":[],"mappings":"AAIA;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAIA;EACI,OCqBkB;;;ADhBtB;EACI;EACA;;AAGJ;EACI;EACA;;;AAKJ;EACI;EACA;EACA;;;AAIR;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA,
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../scss/user_management_dialogs.scss","../../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss"],"names":[],"mappings":"AAIA;EACI;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;;;AAIA;EACI,OCqBkB;;;ADhBtB;EACI;EACA;;AAGJ;EACI;EACA;;;AAKJ;EACI;EACA;EACA;;;AAIR;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA,OCrDoB;;;ADwDxB;EACI;EACA;EACA;;AAEA;EACI;EACA;;;AAIR;EACI;EACA;EACA;;;AAGJ;EACI,OC9EgB;ED+EhB;;;AAGJ;EACI;;;AAGJ;EACI;;;AAGJ;EACI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;;;AAIR;EACI;;;AAGJ;EACI;;;AAGJ;EACI;;AAEA;EACI;EACA;;;AAIR;EACI;EACA,OClIgB;EDmIhB;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;;AAEA;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA,OChKe;EDiKf;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;AAEA;EACI;EACA;;AAGJ;EACI;;AAIR;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;;;AAKJ;EACI;EACA;;AAGJ;EACI;EACA;;AAEA;EACI;;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA,OChOmB;EDiOnB;EACA;EACA;EACA;;;AAOA;AAAA;EAEI;;;AAOJ;EACI;;AAIJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA,OC7QmB;ED8QnB;EACA;EACA;;AAEA;EACI;EACA;EACA;;;AAIR;EACI,OC1RmB;;AD4RnB;EACI;;;AAIR;EACI;EACA;EACA;EACA,OCrSmB;;ADuSnB;EACI;;;AAIR;EACI;EACA;EACA;EACA;EACA","file":"user_management_dialogs.css"}
|
|
@@ -71,6 +71,16 @@
|
|
|
71
71
|
gap: 20px;
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
+
.gd-user-management-dialog-detail-localization .gd-user-management-dialog-detail-row .input-checkbox-label {
|
|
75
|
+
margin: 0;
|
|
76
|
+
vertical-align: top;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.gd-user-management-dialog-detail-row-checkbox-edit {
|
|
80
|
+
align-items: center;
|
|
81
|
+
min-height: 32px;
|
|
82
|
+
}
|
|
83
|
+
|
|
74
84
|
.gd-user-management-dialog-detail-label {
|
|
75
85
|
width: 150px;
|
|
76
86
|
color: kit-variables.$default-gd-color-label;
|
|
@@ -280,3 +290,48 @@
|
|
|
280
290
|
color: var(--gd-palette-complementary-6, #94a1ad);
|
|
281
291
|
}
|
|
282
292
|
}
|
|
293
|
+
|
|
294
|
+
.gd-user-management-dialog-detail-section-title {
|
|
295
|
+
display: flex;
|
|
296
|
+
align-items: center;
|
|
297
|
+
gap: 10px;
|
|
298
|
+
height: 28px;
|
|
299
|
+
margin-top: 20px;
|
|
300
|
+
color: kit-variables.$gd-color-state-blank;
|
|
301
|
+
font-size: 11px;
|
|
302
|
+
font-weight: 700;
|
|
303
|
+
text-transform: uppercase;
|
|
304
|
+
|
|
305
|
+
&::after {
|
|
306
|
+
content: "";
|
|
307
|
+
flex: 1;
|
|
308
|
+
border-top: 1px solid kit-variables.$gd-border-color;
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
.gd-user-management-dialog-detail-code {
|
|
313
|
+
color: kit-variables.$gd-color-state-blank;
|
|
314
|
+
|
|
315
|
+
.gd-user-management-dialog-detail-input & {
|
|
316
|
+
font-size: 12px;
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
.gd-user-management-dialog-detail-value-not-set {
|
|
321
|
+
display: flex;
|
|
322
|
+
align-items: center;
|
|
323
|
+
gap: 5px;
|
|
324
|
+
color: kit-variables.$gd-color-state-blank;
|
|
325
|
+
|
|
326
|
+
.gd-bubble-trigger {
|
|
327
|
+
display: inline-flex;
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
.gd-message.gd-user-management-dialog-detail-notice {
|
|
332
|
+
align-self: flex-start;
|
|
333
|
+
margin-left: 170px;
|
|
334
|
+
padding: 4px 10px;
|
|
335
|
+
font-size: 12px;
|
|
336
|
+
line-height: 16px;
|
|
337
|
+
}
|