"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useUpdateFlappingSettings = void 0; var _i18n = require("@kbn/i18n"); var _reactQuery = require("@tanstack/react-query"); var _kibana = require("../../common/lib/kibana"); var _update_flapping_settings = require("../lib/rule_api/update_flapping_settings"); /* * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one * or more contributor license agreements. Licensed under the Elastic License * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ const useUpdateFlappingSettings = props => { const { onSave, onClose, setUpdatingRulesSettings } = props; const { http, notifications: { toasts } } = (0, _kibana.useKibana)().services; const mutationFn = flappingSettings => { return (0, _update_flapping_settings.updateFlappingSettings)({ http, flappingSettings }); }; return (0, _reactQuery.useMutation)({ mutationFn, onMutate: () => { onClose(); setUpdatingRulesSettings === null || setUpdatingRulesSettings === void 0 ? void 0 : setUpdatingRulesSettings(true); }, onSuccess: () => { toasts.addSuccess(_i18n.i18n.translate('xpack.triggersActionsUI.rulesSettings.modal.updateRulesSettingsSuccess', { defaultMessage: 'Rules settings updated successfully.' })); }, onError: () => { toasts.addDanger(_i18n.i18n.translate('xpack.triggersActionsUI.rulesSettings.modal.updateRulesSettingsFailure', { defaultMessage: 'Failed to update rules settings.' })); }, onSettled: () => { setUpdatingRulesSettings === null || setUpdatingRulesSettings === void 0 ? void 0 : setUpdatingRulesSettings(false); onSave === null || onSave === void 0 ? void 0 : onSave(); } }); }; exports.useUpdateFlappingSettings = useUpdateFlappingSettings;