UNPKG

@keycloakify/keycloak-admin-ui

Version:
31 lines 1.79 kB
import { jsx as _jsx } from "react/jsx-runtime"; import { useAlerts } from "../ui-shared"; import { AlertVariant, Button, ButtonVariant, Form, Modal, ModalVariant, } from "@patternfly/react-core"; import { useEffect } from "react"; import { FormProvider, useForm } from "react-hook-form"; import { useTranslation } from "react-i18next"; import { useAdminClient } from "../admin-client"; import { NameDescription } from "../authentication/form/NameDescription"; export const EditFlowModal = ({ flow, toggleDialog }) => { const { adminClient } = useAdminClient(); const { t } = useTranslation(); const { addAlert, addError } = useAlerts(); const form = useForm({ mode: "onChange" }); const { reset, handleSubmit } = form; useEffect(() => reset(flow), [flow]); const onSubmit = async (formValues) => { try { await adminClient.authenticationManagement.updateFlow({ flowId: flow.id }, { ...flow, ...formValues }); addAlert(t("updateFlowSuccess"), AlertVariant.success); } catch (error) { addError("updateFlowError", error); } toggleDialog(); }; return (_jsx(Modal, { title: t("editFlow"), onClose: toggleDialog, variant: ModalVariant.small, actions: [ _jsx(Button, { "data-testid": "confirm", type: "submit", form: "edit-flow-form", children: t("edit") }, "confirm"), _jsx(Button, { "data-testid": "cancel", variant: ButtonVariant.link, onClick: () => toggleDialog(), children: t("cancel") }, "cancel"), ], isOpen: true, children: _jsx(FormProvider, { ...form, children: _jsx(Form, { id: "edit-flow-form", onSubmit: handleSubmit(onSubmit), isHorizontal: true, children: _jsx(NameDescription, {}) }) }) })); }; //# sourceMappingURL=EditFlowModal.js.map