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.85 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.MultipleAlarmActionStrategy = void 0; exports.multipleActions = multipleActions; exports.isMultipleAlarmActionStrategy = isMultipleAlarmActionStrategy; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); function multipleActions(...actions) { return new MultipleAlarmActionStrategy(actions); } function isMultipleAlarmActionStrategy(obj) { return !!(obj && obj instanceof MultipleAlarmActionStrategy); } /** * 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: "10.0.0" }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXVsdGlwbGVBbGFybUFjdGlvblN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiTXVsdGlwbGVBbGFybUFjdGlvblN0cmF0ZWd5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFLQSwwQ0FFQztBQUVELHNFQUlDOztBQVJELFNBQWdCLGVBQWUsQ0FBQyxHQUFHLE9BQStCO0lBQ2hFLE9BQU8sSUFBSSwyQkFBMkIsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUNsRCxDQUFDO0FBRUQsU0FBZ0IsNkJBQTZCLENBQzNDLEdBQVM7SUFFVCxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxHQUFHLFlBQVksMkJBQTJCLENBQUMsQ0FBQztBQUMvRCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLDJCQUEyQjtJQUd0QyxZQUFZLE9BQStCO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBK0I7UUFDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxxQkFBcUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVPLHNCQUFzQixDQUM1QixHQUFHLE9BQStCO1FBRWxDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2hDLElBQUksNkJBQTZCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDMUMsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDN0MsQ0FBQztZQUVELE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBL0JILGtFQWdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFsYXJtQWN0aW9uU3RyYXRlZ3lQcm9wcyxcbiAgSUFsYXJtQWN0aW9uU3RyYXRlZ3ksXG59IGZyb20gXCIuL0lBbGFybUFjdGlvblN0cmF0ZWd5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBtdWx0aXBsZUFjdGlvbnMoLi4uYWN0aW9uczogSUFsYXJtQWN0aW9uU3RyYXRlZ3lbXSkge1xuICByZXR1cm4gbmV3IE11bHRpcGxlQWxhcm1BY3Rpb25TdHJhdGVneShhY3Rpb25zKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzTXVsdGlwbGVBbGFybUFjdGlvblN0cmF0ZWd5KFxuICBvYmo/OiBhbnksXG4pOiBvYmogaXMgTXVsdGlwbGVBbGFybUFjdGlvblN0cmF0ZWd5IHtcbiAgcmV0dXJuICEhKG9iaiAmJiBvYmogaW5zdGFuY2VvZiBNdWx0aXBsZUFsYXJtQWN0aW9uU3RyYXRlZ3kpO1xufVxuXG4vKipcbiAqIEFsYXJtIGFjdGlvbiBzdHJhdGVneSB0aGF0IGNvbWJpbmVzIG11bHRpcGxlIGFjdGlvbnMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhleSB3ZXJlIGdpdmVuLlxuICovXG5leHBvcnQgY2xhc3MgTXVsdGlwbGVBbGFybUFjdGlvblN0cmF0ZWd5IGltcGxlbWVudHMgSUFsYXJtQWN0aW9uU3RyYXRlZ3kge1xuICByZWFkb25seSBhY3Rpb25zOiBJQWxhcm1BY3Rpb25TdHJhdGVneVtdO1xuXG4gIGNvbnN0cnVjdG9yKGFjdGlvbnM6IElBbGFybUFjdGlvblN0cmF0ZWd5W10pIHtcbiAgICB0aGlzLmFjdGlvbnMgPSBhY3Rpb25zO1xuICB9XG5cbiAgYWRkQWxhcm1BY3Rpb25zKHByb3BzOiBBbGFybUFjdGlvblN0cmF0ZWd5UHJvcHMpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGlvbnMuZm9yRWFjaCgoYWN0aW9uKSA9PiBhY3Rpb24uYWRkQWxhcm1BY3Rpb25zKHByb3BzKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBsaXN0IG9mIGFsYXJtIGFjdGlvbnMgd2hlcmUgYW55IG5lc3RlZCBpbnN0YW5jZXMgb2YgTXVsdGlwbGVBbGFybUFjdGlvblN0cmF0ZWd5XG4gICAqIGFyZSBmbGF0dGVuZWQuXG4gICAqXG4gICAqIEByZXR1cm5zIGZsYXR0ZW5lZCBsaXN0IG9mIGFsYXJtIGFjdGlvbnMuXG4gICAqL1xuICBmbGF0dGVuZWRBbGFybUFjdGlvbnMoKTogSUFsYXJtQWN0aW9uU3RyYXRlZ3lbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZsYXR0ZW5lZEFsYXJtQWN0aW9ucyguLi50aGlzLmFjdGlvbnMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmxhdHRlbmVkQWxhcm1BY3Rpb25zKFxuICAgIC4uLmFjdGlvbnM6IElBbGFybUFjdGlvblN0cmF0ZWd5W11cbiAgKTogSUFsYXJtQWN0aW9uU3RyYXRlZ3lbXSB7XG4gICAgcmV0dXJuIGFjdGlvbnMuZmxhdE1hcCgoYWN0aW9uKSA9PiB7XG4gICAgICBpZiAoaXNNdWx0aXBsZUFsYXJtQWN0aW9uU3RyYXRlZ3koYWN0aW9uKSkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmxhdHRlbmVkQWxhcm1BY3Rpb25zKGFjdGlvbik7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBbYWN0aW9uXTtcbiAgICB9KTtcbiAgfVxufVxuIl19