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

38 lines 3.58 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.KeyValueTableWidget = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const aws_cloudwatch_1 = require("aws-cdk-lib/aws-cloudwatch"); const widget_1 = require("../../common/widget"); /** * A widget that displays key-value pairs in a table format. */ class KeyValueTableWidget extends aws_cloudwatch_1.TextWidget { /** * Creates a key-value table widget. * @param data An array of key-value pairs as objects */ constructor(data) { super({ width: widget_1.FullWidth, height: 3, markdown: KeyValueTableWidget.toMarkdown(data), }); } static toMarkdown(data) { let headerRow = ""; let subHeaderRow = ""; let valueRow = ""; data.forEach(({ key, value }) => { headerRow += "| " + key; subHeaderRow += "|---"; valueRow += "| " + value; }); return `${headerRow}\n${subHeaderRow}\n${valueRow}`; } } exports.KeyValueTableWidget = KeyValueTableWidget; _a = JSII_RTTI_SYMBOL_1; KeyValueTableWidget[_a] = { fqn: "cdk-monitoring-constructs.KeyValueTableWidget", version: "10.0.0" }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiS2V5VmFsdWVUYWJsZVdpZGdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIktleVZhbHVlVGFibGVXaWRnZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrREFBd0Q7QUFFeEQsZ0RBQWdEO0FBT2hEOztHQUVHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSwyQkFBVTtJQUNqRDs7O09BR0c7SUFDSCxZQUFZLElBQWdCO1FBQzFCLEtBQUssQ0FBQztZQUNKLEtBQUssRUFBRSxrQkFBUztZQUNoQixNQUFNLEVBQUUsQ0FBQztZQUNULFFBQVEsRUFBRSxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1NBQy9DLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQWdCO1FBQ3hDLElBQUksU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBRWxCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQzlCLFNBQVMsSUFBSSxJQUFJLEdBQUcsR0FBRyxDQUFDO1lBQ3hCLFlBQVksSUFBSSxNQUFNLENBQUM7WUFDdkIsUUFBUSxJQUFJLElBQUksR0FBRyxLQUFLLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLEdBQUcsU0FBUyxLQUFLLFlBQVksS0FBSyxRQUFRLEVBQUUsQ0FBQztJQUN0RCxDQUFDOztBQXpCSCxrREEwQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZXh0V2lkZ2V0IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoXCI7XG5cbmltcG9ydCB7IEZ1bGxXaWR0aCB9IGZyb20gXCIuLi8uLi9jb21tb24vd2lkZ2V0XCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5VmFsdWUge1xuICByZWFkb25seSBrZXk6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIHdpZGdldCB0aGF0IGRpc3BsYXlzIGtleS12YWx1ZSBwYWlycyBpbiBhIHRhYmxlIGZvcm1hdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEtleVZhbHVlVGFibGVXaWRnZXQgZXh0ZW5kcyBUZXh0V2lkZ2V0IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBrZXktdmFsdWUgdGFibGUgd2lkZ2V0LlxuICAgKiBAcGFyYW0gZGF0YSBBbiBhcnJheSBvZiBrZXktdmFsdWUgcGFpcnMgYXMgb2JqZWN0c1xuICAgKi9cbiAgY29uc3RydWN0b3IoZGF0YTogS2V5VmFsdWVbXSkge1xuICAgIHN1cGVyKHtcbiAgICAgIHdpZHRoOiBGdWxsV2lkdGgsXG4gICAgICBoZWlnaHQ6IDMsXG4gICAgICBtYXJrZG93bjogS2V5VmFsdWVUYWJsZVdpZGdldC50b01hcmtkb3duKGRhdGEpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgdG9NYXJrZG93bihkYXRhOiBLZXlWYWx1ZVtdKSB7XG4gICAgbGV0IGhlYWRlclJvdyA9IFwiXCI7XG4gICAgbGV0IHN1YkhlYWRlclJvdyA9IFwiXCI7XG4gICAgbGV0IHZhbHVlUm93ID0gXCJcIjtcblxuICAgIGRhdGEuZm9yRWFjaCgoeyBrZXksIHZhbHVlIH0pID0+IHtcbiAgICAgIGhlYWRlclJvdyArPSBcInwgXCIgKyBrZXk7XG4gICAgICBzdWJIZWFkZXJSb3cgKz0gXCJ8LS0tXCI7XG4gICAgICB2YWx1ZVJvdyArPSBcInwgXCIgKyB2YWx1ZTtcbiAgICB9KTtcblxuICAgIHJldHVybiBgJHtoZWFkZXJSb3d9XFxuJHtzdWJIZWFkZXJSb3d9XFxuJHt2YWx1ZVJvd31gO1xuICB9XG59XG4iXX0=