@keycloakify/keycloak-admin-ui
Version:
Repackaged Keycloak Admin UI
31 lines • 1.34 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { useTranslation } from "react-i18next";
import { useAdminClient } from "../../admin-client";
import { useAlerts } from "../../ui-shared";
import { GroupPickerDialog } from "../../components/group/GroupPickerDialog";
const moveToRoot = (adminClient, source) => source.id
? adminClient.groups.updateRoot(source)
: adminClient.groups.create(source);
const moveToGroup = async (adminClient, source, dest) => adminClient.groups.updateChildGroup({ id: dest.id }, source);
export const MoveDialog = ({ source, onClose, refresh }) => {
const { adminClient } = useAdminClient();
const { t } = useTranslation();
const { addAlert, addError } = useAlerts();
const moveGroup = async (group) => {
try {
await (group
? moveToGroup(adminClient, source, group[0])
: moveToRoot(adminClient, source));
refresh();
addAlert(t("moveGroupSuccess"));
}
catch (error) {
addError("moveGroupError", error);
}
};
return (_jsx(GroupPickerDialog, { type: "selectOne", filterGroups: [source], text: {
title: "moveToGroup",
ok: "moveHere",
}, onClose: onClose, onConfirm: moveGroup, isMove: true }));
};
//# sourceMappingURL=MoveDialog.js.map