UNPKG

cdk-monitoring-constructs

Version:

[![NPM version](https://badge.fury.io/js/cdk-monitoring-constructs.svg)](https://badge.fury.io/js/cdk-monitoring-constructs) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.github.cdklabs/cdkmonitoringconstructs/badge.svg)](https://m

45 lines 4.91 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.MultipleAlarmActionStrategy = exports.isMultipleAlarmActionStrategy = exports.multipleActions = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); function multipleActions(...actions) { return new MultipleAlarmActionStrategy(actions); } exports.multipleActions = multipleActions; function isMultipleAlarmActionStrategy(obj) { return !!(obj && obj instanceof MultipleAlarmActionStrategy); } exports.isMultipleAlarmActionStrategy = isMultipleAlarmActionStrategy; /** * Alarm action strategy that combines multiple actions in the same order as they were given. */ class MultipleAlarmActionStrategy { constructor(actions) { this.actions = actions; } addAlarmActions(props) { this.actions.forEach((action) => action.addAlarmActions(props)); } /** * Returns list of alarm actions where any nested instances of MultipleAlarmActionStrategy * are flattened. * * @returns flattened list of alarm actions. */ flattenedAlarmActions() { return this._flattenedAlarmActions(...this.actions); } _flattenedAlarmActions(...actions) { return actions.flatMap((action) => { if (isMultipleAlarmActionStrategy(action)) { return this._flattenedAlarmActions(action); } return [action]; }); } } exports.MultipleAlarmActionStrategy = MultipleAlarmActionStrategy; _a = JSII_RTTI_SYMBOL_1; MultipleAlarmActionStrategy[_a] = { fqn: "cdk-monitoring-constructs.MultipleAlarmActionStrategy", version: "9.15.2" }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXVsdGlwbGVBbGFybUFjdGlvblN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiTXVsdGlwbGVBbGFybUFjdGlvblN0cmF0ZWd5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBS0EsU0FBZ0IsZUFBZSxDQUFDLEdBQUcsT0FBK0I7SUFDaEUsT0FBTyxJQUFJLDJCQUEyQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFGRCwwQ0FFQztBQUVELFNBQWdCLDZCQUE2QixDQUMzQyxHQUFTO0lBRVQsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksR0FBRyxZQUFZLDJCQUEyQixDQUFDLENBQUM7QUFDL0QsQ0FBQztBQUpELHNFQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLDJCQUEyQjtJQUd0QyxZQUFZLE9BQStCO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBK0I7UUFDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxxQkFBcUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVPLHNCQUFzQixDQUM1QixHQUFHLE9BQStCO1FBRWxDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2hDLElBQUksNkJBQTZCLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ3pDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQzVDO1lBRUQsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUEvQkgsa0VBZ0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWxhcm1BY3Rpb25TdHJhdGVneVByb3BzLFxuICBJQWxhcm1BY3Rpb25TdHJhdGVneSxcbn0gZnJvbSBcIi4vSUFsYXJtQWN0aW9uU3RyYXRlZ3lcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIG11bHRpcGxlQWN0aW9ucyguLi5hY3Rpb25zOiBJQWxhcm1BY3Rpb25TdHJhdGVneVtdKSB7XG4gIHJldHVybiBuZXcgTXVsdGlwbGVBbGFybUFjdGlvblN0cmF0ZWd5KGFjdGlvbnMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNNdWx0aXBsZUFsYXJtQWN0aW9uU3RyYXRlZ3koXG4gIG9iaj86IGFueSxcbik6IG9iaiBpcyBNdWx0aXBsZUFsYXJtQWN0aW9uU3RyYXRlZ3kge1xuICByZXR1cm4gISEob2JqICYmIG9iaiBpbnN0YW5jZW9mIE11bHRpcGxlQWxhcm1BY3Rpb25TdHJhdGVneSk7XG59XG5cbi8qKlxuICogQWxhcm0gYWN0aW9uIHN0cmF0ZWd5IHRoYXQgY29tYmluZXMgbXVsdGlwbGUgYWN0aW9ucyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGV5IHdlcmUgZ2l2ZW4uXG4gKi9cbmV4cG9ydCBjbGFzcyBNdWx0aXBsZUFsYXJtQWN0aW9uU3RyYXRlZ3kgaW1wbGVtZW50cyBJQWxhcm1BY3Rpb25TdHJhdGVneSB7XG4gIHJlYWRvbmx5IGFjdGlvbnM6IElBbGFybUFjdGlvblN0cmF0ZWd5W107XG5cbiAgY29uc3RydWN0b3IoYWN0aW9uczogSUFsYXJtQWN0aW9uU3RyYXRlZ3lbXSkge1xuICAgIHRoaXMuYWN0aW9ucyA9IGFjdGlvbnM7XG4gIH1cblxuICBhZGRBbGFybUFjdGlvbnMocHJvcHM6IEFsYXJtQWN0aW9uU3RyYXRlZ3lQcm9wcyk6IHZvaWQge1xuICAgIHRoaXMuYWN0aW9ucy5mb3JFYWNoKChhY3Rpb24pID0+IGFjdGlvbi5hZGRBbGFybUFjdGlvbnMocHJvcHMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGxpc3Qgb2YgYWxhcm0gYWN0aW9ucyB3aGVyZSBhbnkgbmVzdGVkIGluc3RhbmNlcyBvZiBNdWx0aXBsZUFsYXJtQWN0aW9uU3RyYXRlZ3lcbiAgICogYXJlIGZsYXR0ZW5lZC5cbiAgICpcbiAgICogQHJldHVybnMgZmxhdHRlbmVkIGxpc3Qgb2YgYWxhcm0gYWN0aW9ucy5cbiAgICovXG4gIGZsYXR0ZW5lZEFsYXJtQWN0aW9ucygpOiBJQWxhcm1BY3Rpb25TdHJhdGVneVtdIHtcbiAgICByZXR1cm4gdGhpcy5fZmxhdHRlbmVkQWxhcm1BY3Rpb25zKC4uLnRoaXMuYWN0aW9ucyk7XG4gIH1cblxuICBwcml2YXRlIF9mbGF0dGVuZWRBbGFybUFjdGlvbnMoXG4gICAgLi4uYWN0aW9uczogSUFsYXJtQWN0aW9uU3RyYXRlZ3lbXVxuICApOiBJQWxhcm1BY3Rpb25TdHJhdGVneVtdIHtcbiAgICByZXR1cm4gYWN0aW9ucy5mbGF0TWFwKChhY3Rpb24pID0+IHtcbiAgICAgIGlmIChpc011bHRpcGxlQWxhcm1BY3Rpb25TdHJhdGVneShhY3Rpb24pKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mbGF0dGVuZWRBbGFybUFjdGlvbnMoYWN0aW9uKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIFthY3Rpb25dO1xuICAgIH0pO1xuICB9XG59XG4iXX0=