"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.fieldsToExcludeFromRevisionUpdates = exports.RulesClient = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _parse_duration = require("../../common/parse_duration"); var _clone = require("./methods/clone"); var _create = require("../application/rule/methods/create"); var _get = require("./methods/get"); var _resolve = require("./methods/resolve"); var _get_alert_state = require("./methods/get_alert_state"); var _get_alert_summary = require("./methods/get_alert_summary"); var _get_execution_log = require("./methods/get_execution_log"); var _get_action_error_log = require("./methods/get_action_error_log"); var _get_execution_kpi = require("./methods/get_execution_kpi"); var _find = require("./methods/find"); var _aggregate = require("./methods/aggregate"); var _delete = require("./methods/delete"); var _update = require("./methods/update"); var _bulk_delete = require("./methods/bulk_delete"); var _bulk_edit_rules = require("../application/rule/methods/bulk_edit/bulk_edit_rules"); var _bulk_enable = require("./methods/bulk_enable"); var _bulk_disable = require("./methods/bulk_disable"); var _update_api_key = require("./methods/update_api_key"); var _enable = require("./methods/enable"); var _disable = require("./methods/disable"); var _snooze = require("./methods/snooze"); var _unsnooze = require("./methods/unsnooze"); var _clear_expired_snoozes = require("./methods/clear_expired_snoozes"); var _mute_all = require("./methods/mute_all"); var _unmute_all = require("./methods/unmute_all"); var _mute_instance = require("./methods/mute_instance"); var _unmute_instance = require("./methods/unmute_instance"); var _run_soon = require("./methods/run_soon"); var _list_rule_types = require("./methods/list_rule_types"); var _get_alert_from_raw = require("./lib/get_alert_from_raw"); var _get_tags = require("./methods/get_tags"); /* * 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 fieldsToExcludeFromPublicApi = ['monitoring', 'mapped_params', 'snoozeSchedule', 'activeSnoozes']; const fieldsToExcludeFromRevisionUpdates = new Set(['activeSnoozes', 'alertTypeId', 'apiKey', 'apiKeyOwner', 'apiKeyCreatedByUser', 'consumer', 'createdAt', 'createdBy', 'enabled', 'executionStatus', 'id', 'isSnoozedUntil', 'lastRun', 'monitoring', 'muteAll', 'mutedInstanceIds', 'nextRun', 'revision', 'running', 'snoozeSchedule', 'updatedBy', 'updatedAt']); exports.fieldsToExcludeFromRevisionUpdates = fieldsToExcludeFromRevisionUpdates; class RulesClient { constructor(context) { (0, _defineProperty2.default)(this, "context", void 0); (0, _defineProperty2.default)(this, "aggregate", params => (0, _aggregate.aggregate)(this.context, params)); (0, _defineProperty2.default)(this, "clone", (...args) => (0, _clone.clone)(this.context, ...args)); (0, _defineProperty2.default)(this, "create", params => (0, _create.createRule)(this.context, params)); (0, _defineProperty2.default)(this, "delete", params => (0, _delete.deleteRule)(this.context, params)); (0, _defineProperty2.default)(this, "find", params => (0, _find.find)(this.context, params)); (0, _defineProperty2.default)(this, "get", params => (0, _get.get)(this.context, params)); (0, _defineProperty2.default)(this, "resolve", params => (0, _resolve.resolve)(this.context, params)); (0, _defineProperty2.default)(this, "update", params => (0, _update.update)(this.context, params)); (0, _defineProperty2.default)(this, "getAlertState", params => (0, _get_alert_state.getAlertState)(this.context, params)); (0, _defineProperty2.default)(this, "getAlertSummary", params => (0, _get_alert_summary.getAlertSummary)(this.context, params)); (0, _defineProperty2.default)(this, "getExecutionLogForRule", params => (0, _get_execution_log.getExecutionLogForRule)(this.context, params)); (0, _defineProperty2.default)(this, "getGlobalExecutionLogWithAuth", params => (0, _get_execution_log.getGlobalExecutionLogWithAuth)(this.context, params)); (0, _defineProperty2.default)(this, "getRuleExecutionKPI", params => (0, _get_execution_kpi.getRuleExecutionKPI)(this.context, params)); (0, _defineProperty2.default)(this, "getGlobalExecutionKpiWithAuth", params => (0, _get_execution_kpi.getGlobalExecutionKpiWithAuth)(this.context, params)); (0, _defineProperty2.default)(this, "getActionErrorLog", params => (0, _get_action_error_log.getActionErrorLog)(this.context, params)); (0, _defineProperty2.default)(this, "getActionErrorLogWithAuth", params => (0, _get_action_error_log.getActionErrorLogWithAuth)(this.context, params)); (0, _defineProperty2.default)(this, "bulkDeleteRules", options => (0, _bulk_delete.bulkDeleteRules)(this.context, options)); (0, _defineProperty2.default)(this, "bulkEdit", options => (0, _bulk_edit_rules.bulkEditRules)(this.context, options)); (0, _defineProperty2.default)(this, "bulkEnableRules", options => (0, _bulk_enable.bulkEnableRules)(this.context, options)); (0, _defineProperty2.default)(this, "bulkDisableRules", options => (0, _bulk_disable.bulkDisableRules)(this.context, options)); (0, _defineProperty2.default)(this, "updateApiKey", options => (0, _update_api_key.updateApiKey)(this.context, options)); (0, _defineProperty2.default)(this, "enable", options => (0, _enable.enable)(this.context, options)); (0, _defineProperty2.default)(this, "disable", options => (0, _disable.disable)(this.context, options)); (0, _defineProperty2.default)(this, "snooze", options => (0, _snooze.snooze)(this.context, options)); (0, _defineProperty2.default)(this, "unsnooze", options => (0, _unsnooze.unsnooze)(this.context, options)); (0, _defineProperty2.default)(this, "clearExpiredSnoozes", options => (0, _clear_expired_snoozes.clearExpiredSnoozes)(this.context, options)); (0, _defineProperty2.default)(this, "muteAll", options => (0, _mute_all.muteAll)(this.context, options)); (0, _defineProperty2.default)(this, "unmuteAll", options => (0, _unmute_all.unmuteAll)(this.context, options)); (0, _defineProperty2.default)(this, "muteInstance", options => (0, _mute_instance.muteInstance)(this.context, options)); (0, _defineProperty2.default)(this, "unmuteInstance", options => (0, _unmute_instance.unmuteInstance)(this.context, options)); (0, _defineProperty2.default)(this, "runSoon", options => (0, _run_soon.runSoon)(this.context, options)); (0, _defineProperty2.default)(this, "listRuleTypes", () => (0, _list_rule_types.listRuleTypes)(this.context)); (0, _defineProperty2.default)(this, "getTags", params => (0, _get_tags.getTags)(this.context, params)); (0, _defineProperty2.default)(this, "getAlertFromRaw", params => (0, _get_alert_from_raw.getAlertFromRaw)(this.context, params.id, params.ruleTypeId, params.rawRule, params.references, params.includeLegacyId, params.excludeFromPublicApi, params.includeSnoozeData, params.omitGeneratedValues)); this.context = { ...context, minimumScheduleIntervalInMs: (0, _parse_duration.parseDuration)(context.minimumScheduleInterval.value), fieldsToExcludeFromPublicApi }; } getSpaceId() { return this.context.spaceId; } getAuthorization() { return this.context.authorization; } getAuditLogger() { return this.context.auditLogger; } } exports.RulesClient = RulesClient;