Socket
Socket
Sign inDemoInstall

@aws-cdk/aws-logs

Package Overview
Dependencies
Maintainers
4
Versions
288
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aws-cdk/aws-logs - npm Package Compare versions

Comparing version 0.8.2 to 0.9.0

key.snk

11

lib/cross-account-destination.d.ts
import iam = require('@aws-cdk/aws-iam');
import cdk = require('@aws-cdk/cdk');
import { LogGroup } from './log-group';
import { DestinationArn } from './logs.generated';
import { LogGroupRef } from './log-group';
import { DestinationArn, DestinationName } from './logs.generated';
import { ILogSubscriptionDestination, LogSubscriptionDestination } from './subscription-filter';

@@ -53,3 +53,3 @@ export interface CrossAccountDestinationProps {

addToPolicy(statement: cdk.PolicyStatement): void;
logSubscriptionDestination(_sourceLogGroup: LogGroup): LogSubscriptionDestination;
logSubscriptionDestination(_sourceLogGroup: LogGroupRef): LogSubscriptionDestination;
/**

@@ -64,6 +64,1 @@ * Generate a unique Destination name in case the user didn't supply one

}
/**
* Name of a CloudWatch Destination
*/
export declare class DestinationName extends cdk.Token {
}

@@ -56,8 +56,2 @@ "use strict";

exports.CrossAccountDestination = CrossAccountDestination;
/**
* Name of a CloudWatch Destination
*/
class DestinationName extends cdk.Token {
}
exports.DestinationName = DestinationName;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvc3MtYWNjb3VudC1kZXN0aW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNyb3NzLWFjY291bnQtZGVzdGluYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxvQ0FBcUM7QUFFckMscURBQWtFO0FBd0JsRTs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFhLHVCQUF3QixTQUFRLEdBQUcsQ0FBQyxTQUFTO0lBcUJ0RCxZQUFZLE1BQXFCLEVBQUUsRUFBVSxFQUFFLEtBQW1DO1FBQzlFLEtBQUssQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFyQnRCOztXQUVHO1FBQ2EsbUJBQWMsR0FBdUIsSUFBSSxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7UUFvQjFFLCtFQUErRTtRQUMvRSxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsZUFBZSxJQUFJLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBRWhHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSwrQkFBYyxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDckUsZUFBZTtZQUNmLDZCQUE2QjtZQUM3QixpQkFBaUIsRUFBRSxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7WUFDeEUsT0FBTyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTztZQUMzQixTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7U0FDN0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQztRQUNuRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQzdDLENBQUM7SUFFTSxXQUFXLENBQUMsU0FBOEI7UUFDN0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVNLDBCQUEwQixDQUFDLGVBQXlCO1FBQ3ZELE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7T0FFRztJQUNLLGtCQUFrQjtRQUN0Qiw4RUFBOEU7UUFDOUUsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxLQUFLLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7O09BRUc7SUFDSyx5QkFBeUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztDQUNKO0FBOURELDBEQThEQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxlQUFnQixTQUFRLEdBQUcsQ0FBQyxLQUFLO0NBQzdDO0FBREQsMENBQ0MifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvc3MtYWNjb3VudC1kZXN0aW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNyb3NzLWFjY291bnQtZGVzdGluYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxvQ0FBcUM7QUFFckMscURBQW1GO0FBd0JuRjs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFhLHVCQUF3QixTQUFRLEdBQUcsQ0FBQyxTQUFTO0lBcUJ0RCxZQUFZLE1BQXFCLEVBQUUsRUFBVSxFQUFFLEtBQW1DO1FBQzlFLEtBQUssQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFyQnRCOztXQUVHO1FBQ2EsbUJBQWMsR0FBdUIsSUFBSSxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7UUFvQjFFLCtFQUErRTtRQUMvRSxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsZUFBZSxJQUFJLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBRWhHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSwrQkFBYyxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDckUsZUFBZTtZQUNmLDZCQUE2QjtZQUM3QixpQkFBaUIsRUFBRSxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7WUFDeEUsT0FBTyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTztZQUMzQixTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7U0FDN0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQztRQUNuRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQzdDLENBQUM7SUFFTSxXQUFXLENBQUMsU0FBOEI7UUFDN0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVNLDBCQUEwQixDQUFDLGVBQTRCO1FBQzFELE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7T0FFRztJQUNLLGtCQUFrQjtRQUN0Qiw4RUFBOEU7UUFDOUUsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxLQUFLLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7O09BRUc7SUFDSyx5QkFBeUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztDQUNKO0FBOURELDBEQThEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBMb2dHcm91cFJlZiB9IGZyb20gJy4vbG9nLWdyb3VwJztcbmltcG9ydCB7IGNsb3VkZm9ybWF0aW9uLCBEZXN0aW5hdGlvbkFybiwgRGVzdGluYXRpb25OYW1lIH0gZnJvbSAnLi9sb2dzLmdlbmVyYXRlZCc7XG5pbXBvcnQgeyBJTG9nU3Vic2NyaXB0aW9uRGVzdGluYXRpb24sIExvZ1N1YnNjcmlwdGlvbkRlc3RpbmF0aW9uIH0gZnJvbSAnLi9zdWJzY3JpcHRpb24tZmlsdGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBDcm9zc0FjY291bnREZXN0aW5hdGlvblByb3BzIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGUgbG9nIGRlc3RpbmF0aW9uLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgQXV0b21hdGljYWxseSBnZW5lcmF0ZWRcbiAgICAgKi9cbiAgICBkZXN0aW5hdGlvbk5hbWU/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgcm9sZSB0byBhc3N1bWUgdGhhdCBncmFudHMgcGVybWlzc2lvbnMgdG8gd3JpdGUgdG8gJ3RhcmdldCcuXG4gICAgICpcbiAgICAgKiBUaGUgcm9sZSBtdXN0IGJlIGFzc3VtYWJsZSBieSAnbG9ncy57UkVHSU9OfS5hbWF6b25hd3MuY29tJy5cbiAgICAgKi9cbiAgICByb2xlOiBpYW0uUm9sZTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBsb2cgZGVzdGluYXRpb24gdGFyZ2V0J3MgQVJOXG4gICAgICovXG4gICAgdGFyZ2V0QXJuOiBjZGsuQXJuO1xufVxuXG4vKipcbiAqIEEgbmV3IENsb3VkV2F0Y2ggTG9ncyBEZXN0aW5hdGlvbiBmb3IgdXNlIGluIGNyb3NzLWFjY291bnQgc2NlbmFyaW9zXG4gKlxuICogTG9nIGRlc3RpbmF0aW9ucyBjYW4gYmUgdXNlZCB0byBzdWJzY3JpYmUgYSBLaW5lc2lzIHN0cmVhbSBpbiBhIGRpZmZlcmVudFxuICogYWNjb3VudCB0byBhIENsb3VkV2F0Y2ggU3Vic2NyaXB0aW9uLiBBIEtpbmVzaXMgc3RyZWFtIGluIHRoZSBzYW1lIGFjY291bnRcbiAqIGNhbiBiZSBzdWJzY3JpYmVkIGRpcmVjdGx5LlxuICpcbiAqIFRoZSBAYXdzLWNkay9hd3Mta2luZXNpcyBsaWJyYXJ5IHRha2VzIGNhcmUgb2YgdGhpcyBhdXRvbWF0aWNhbGx5OyB5b3Ugc2hvdWxkbid0XG4gKiBuZWVkIHRvIGJvdGhlciB3aXRoIHRoaXMgY2xhc3MuXG4gKi9cbmV4cG9ydCBjbGFzcyBDcm9zc0FjY291bnREZXN0aW5hdGlvbiBleHRlbmRzIGNkay5Db25zdHJ1Y3QgaW1wbGVtZW50cyBJTG9nU3Vic2NyaXB0aW9uRGVzdGluYXRpb24ge1xuICAgIC8qKlxuICAgICAqIFBvbGljeSBvYmplY3Qgb2YgdGhpcyBDcm9zc0FjY291bnREZXN0aW5hdGlvbiBvYmplY3RcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgcG9saWN5RG9jdW1lbnQ6IGNkay5Qb2xpY3lEb2N1bWVudCA9IG5ldyBjZGsuUG9saWN5RG9jdW1lbnQoKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoaXMgQ3Jvc3NBY2NvdW50RGVzdGluYXRpb24gb2JqZWN0XG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGRlc3RpbmF0aW9uTmFtZTogRGVzdGluYXRpb25OYW1lO1xuXG4gICAgLyoqXG4gICAgICogVGhlIEFSTiBvZiB0aGlzIENyb3NzQWNjb3VudERlc3RpbmF0aW9uIG9iamVjdFxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBkZXN0aW5hdGlvbkFybjogRGVzdGluYXRpb25Bcm47XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaW5uZXIgcmVzb3VyY2VcbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlOiBjbG91ZGZvcm1hdGlvbi5EZXN0aW5hdGlvblJlc291cmNlO1xuXG4gICAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ3Jvc3NBY2NvdW50RGVzdGluYXRpb25Qcm9wcykge1xuICAgICAgICBzdXBlcihwYXJlbnQsIGlkKTtcblxuICAgICAgICAvLyBJbiB0aGUgdW5kZXJseWluZyBtb2RlbCwgdGhlIG5hbWUgaXMgbm90IG9wdGlvbmFsLCBidXQgd2UgbWFrZSBpdCBzbyBhbnl3YXkuXG4gICAgICAgIGNvbnN0IGRlc3RpbmF0aW9uTmFtZSA9IHByb3BzLmRlc3RpbmF0aW9uTmFtZSB8fCBuZXcgY2RrLlRva2VuKCgpID0+IHRoaXMuZ2VuZXJhdGVVbmlxdWVOYW1lKCkpO1xuXG4gICAgICAgIHRoaXMucmVzb3VyY2UgPSBuZXcgY2xvdWRmb3JtYXRpb24uRGVzdGluYXRpb25SZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICAgICAgICBkZXN0aW5hdGlvbk5hbWUsXG4gICAgICAgICAgICAvLyBNdXN0IGJlIHN0cmluZ2lmaWVkIHBvbGljeVxuICAgICAgICAgICAgZGVzdGluYXRpb25Qb2xpY3k6IG5ldyBjZGsuVG9rZW4oKCkgPT4gdGhpcy5zdHJpbmdpZmllZFBvbGljeURvY3VtZW50KCkpLFxuICAgICAgICAgICAgcm9sZUFybjogcHJvcHMucm9sZS5yb2xlQXJuLFxuICAgICAgICAgICAgdGFyZ2V0QXJuOiBwcm9wcy50YXJnZXRBcm5cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbkFybiA9IHRoaXMucmVzb3VyY2UuZGVzdGluYXRpb25Bcm47XG4gICAgICAgIHRoaXMuZGVzdGluYXRpb25OYW1lID0gdGhpcy5yZXNvdXJjZS5yZWY7XG4gICAgfVxuXG4gICAgcHVibGljIGFkZFRvUG9saWN5KHN0YXRlbWVudDogY2RrLlBvbGljeVN0YXRlbWVudCkge1xuICAgICAgICB0aGlzLnBvbGljeURvY3VtZW50LmFkZFN0YXRlbWVudChzdGF0ZW1lbnQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBsb2dTdWJzY3JpcHRpb25EZXN0aW5hdGlvbihfc291cmNlTG9nR3JvdXA6IExvZ0dyb3VwUmVmKTogTG9nU3Vic2NyaXB0aW9uRGVzdGluYXRpb24ge1xuICAgICAgICByZXR1cm4geyBhcm46IHRoaXMuZGVzdGluYXRpb25Bcm4gfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZW5lcmF0ZSBhIHVuaXF1ZSBEZXN0aW5hdGlvbiBuYW1lIGluIGNhc2UgdGhlIHVzZXIgZGlkbid0IHN1cHBseSBvbmVcbiAgICAgKi9cbiAgICBwcml2YXRlIGdlbmVyYXRlVW5pcXVlTmFtZSgpOiBzdHJpbmcge1xuICAgICAgICAvLyBDb21iaW5hdGlvbiBvZiBzdGFjayBuYW1lIGFuZCBMb2dpY2FsSUQsIHdoaWNoIGFyZSBndWFyYW50ZWVkIHRvIGJlIHVuaXF1ZS5cbiAgICAgICAgY29uc3Qgc3RhY2sgPSBjZGsuU3RhY2suZmluZCh0aGlzKTtcbiAgICAgICAgcmV0dXJuIHN0YWNrLm5hbWUgKyAnLScgKyB0aGlzLnJlc291cmNlLmxvZ2ljYWxJZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gYSBzdHJpbmdpZmllZCBKU09OIHZlcnNpb24gb2YgdGhlIFBvbGljeURvY3VtZW50XG4gICAgICovXG4gICAgcHJpdmF0ZSBzdHJpbmdpZmllZFBvbGljeURvY3VtZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wb2xpY3lEb2N1bWVudC5pc0VtcHR5ID8gJycgOiBjZGsuQ2xvdWRGb3JtYXRpb25KU09OLnN0cmluZ2lmeShjZGsucmVzb2x2ZSh0aGlzLnBvbGljeURvY3VtZW50KSk7XG4gICAgfVxufSJdfQ==

@@ -14,2 +14,2 @@ "use strict";

__export(require("./logs.generated"));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlEQUE0QztBQUM1QyxpQ0FBNEI7QUFDNUIsa0NBQTZCO0FBQzdCLHFDQUFnQztBQUNoQywrQkFBMEI7QUFDMUIsMkNBQXNDO0FBRXRDLHNDQUFzQztBQUN0QyxzQ0FBaUMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlEQUE0QztBQUM1QyxpQ0FBNEI7QUFDNUIsa0NBQTZCO0FBQzdCLHFDQUFnQztBQUNoQywrQkFBMEI7QUFDMUIsMkNBQXNDO0FBRXRDLHNDQUFzQztBQUN0QyxzQ0FBaUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Nyb3NzLWFjY291bnQtZGVzdGluYXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9sb2ctZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2ctc3RyZWFtJztcbmV4cG9ydCAqIGZyb20gJy4vbWV0cmljLWZpbHRlcic7XG5leHBvcnQgKiBmcm9tICcuL3BhdHRlcm4nO1xuZXhwb3J0ICogZnJvbSAnLi9zdWJzY3JpcHRpb24tZmlsdGVyJztcblxuLy8gQVdTOjpMb2dzIENsb3VkRm9ybWF0aW9uIFJlc291cmNlczpcbmV4cG9ydCAqIGZyb20gJy4vbG9ncy5nZW5lcmF0ZWQnO1xuIl19
import cdk = require('@aws-cdk/cdk');
import { LogStream } from './log-stream';
import { LogGroupArn } from './logs.generated';
import { LogGroupArn, LogGroupName } from './logs.generated';
import { MetricFilter } from './metric-filter';

@@ -8,4 +8,69 @@ import { IFilterPattern } from './pattern';

/**
* Properties for a new LogGroup
* Properties for importing a LogGroup
*/
export interface LogGroupRefProps {
logGroupArn: LogGroupArn;
}
/**
* An CloudWatch Log Group
*/
export declare abstract class LogGroupRef extends cdk.Construct {
/**
* Import an existing LogGroup
*/
static import(parent: cdk.Construct, id: string, props: LogGroupRefProps): LogGroupRef;
/**
* The ARN of this log group
*/
abstract readonly logGroupArn: LogGroupArn;
/**
* The name of this log group
*/
abstract readonly logGroupName: LogGroupName;
/**
* Create a new Log Stream for this Log Group
*
* @param parent Parent construct
* @param id Unique identifier for the construct in its parent
* @param props Properties for creating the LogStream
*/
newStream(parent: cdk.Construct, id: string, props?: NewLogStreamProps): LogStream;
/**
* Create a new Subscription Filter on this Log Group
*
* @param parent Parent construct
* @param id Unique identifier for the construct in its parent
* @param props Properties for creating the SubscriptionFilter
*/
newSubscriptionFilter(parent: cdk.Construct, id: string, props: NewSubscriptionFilterProps): SubscriptionFilter;
/**
* Create a new Metric Filter on this Log Group
*
* @param parent Parent construct
* @param id Unique identifier for the construct in its parent
* @param props Properties for creating the MetricFilter
*/
newMetricFilter(parent: cdk.Construct, id: string, props: NewMetricFilterProps): MetricFilter;
/**
* Export this LogGroup
*/
export(): LogGroupRefProps;
/**
* Extract a metric from structured log events in the LogGroup
*
* Creates a MetricFilter on this LogGroup that will extract the value
* of the indicated JSON field in all records where it occurs.
*
* The metric will be available in CloudWatch Metrics under the
* indicated namespace and name.
*
* @param jsonField JSON field to extract (example: '$.myfield')
* @param metricNamespace Namespace to emit the metric under
* @param metricName Name to emit the metric under
*/
extractMetric(jsonField: string, metricNamespace: string, metricName: string): void;
}
/**
* Properties for a LogGroup
*/
export interface LogGroupProps {

@@ -39,5 +104,5 @@ /**

/**
* A new CloudWatch Log Group
* Define a CloudWatch Log Group
*/
export declare class LogGroup extends cdk.Construct {
export declare class LogGroup extends LogGroupRef {
/**

@@ -52,33 +117,4 @@ * The ARN of this log group

constructor(parent: cdk.Construct, id: string, props?: LogGroupProps);
/**
* Create a new Log Stream for this Log Group
*
* @param parent Parent construct
* @param id Unique identifier for the construct in its parent
* @param props Properties for creating the LogStream
*/
newStream(parent: cdk.Construct, id: string, props?: NewLogStreamProps): LogStream;
/**
* Create a new Subscription Filter on this Log Group
*
* @param parent Parent construct
* @param id Unique identifier for the construct in its parent
* @param props Properties for creating the SubscriptionFilter
*/
newSubscriptionFilter(parent: cdk.Construct, id: string, props: NewSubscriptionFilterProps): SubscriptionFilter;
/**
* Create a new Metric Filter on this Log Group
*
* @param parent Parent construct
* @param id Unique identifier for the construct in its parent
* @param props Properties for creating the MetricFilter
*/
newMetricFilter(parent: cdk.Construct, id: string, props: NewMetricFilterProps): MetricFilter;
}
/**
* Name of a log group
*/
export declare class LogGroupName extends cdk.Token {
}
/**
* Properties for a new LogStream created from a LogGroup

@@ -85,0 +121,0 @@ */

@@ -7,28 +7,13 @@ "use strict";

const metric_filter_1 = require("./metric-filter");
const pattern_1 = require("./pattern");
const subscription_filter_1 = require("./subscription-filter");
/**
* A new CloudWatch Log Group
* An CloudWatch Log Group
*/
class LogGroup extends cdk.Construct {
constructor(parent, id, props = {}) {
super(parent, id);
let retentionInDays = props.retentionDays;
if (retentionInDays === undefined) {
retentionInDays = 730;
}
if (retentionInDays === Infinity) {
retentionInDays = undefined;
}
if (retentionInDays !== undefined && retentionInDays <= 0) {
throw new Error(`retentionInDays must be positive, got ${retentionInDays}`);
}
const resource = new logs_generated_1.cloudformation.LogGroupResource(this, 'Resource', {
logGroupName: props.logGroupName,
retentionInDays,
});
if (props.retainLogGroup !== false) {
cdk.applyRemovalPolicy(resource, cdk.RemovalPolicy.Orphan);
}
this.logGroupArn = resource.logGroupArn;
this.logGroupName = resource.ref;
class LogGroupRef extends cdk.Construct {
/**
* Import an existing LogGroup
*/
static import(parent, id, props) {
return new ImportedLogGroup(parent, id, props);
}

@@ -65,10 +50,72 @@ /**

}
/**
* Export this LogGroup
*/
export() {
return {
logGroupArn: new logs_generated_1.LogGroupArn(new cdk.Output(this, 'LogGroupArn', { value: this.logGroupArn }).makeImportValue())
};
}
/**
* Extract a metric from structured log events in the LogGroup
*
* Creates a MetricFilter on this LogGroup that will extract the value
* of the indicated JSON field in all records where it occurs.
*
* The metric will be available in CloudWatch Metrics under the
* indicated namespace and name.
*
* @param jsonField JSON field to extract (example: '$.myfield')
* @param metricNamespace Namespace to emit the metric under
* @param metricName Name to emit the metric under
*/
extractMetric(jsonField, metricNamespace, metricName) {
new metric_filter_1.MetricFilter(this, `${metricNamespace}_${metricName}`, {
logGroup: this,
metricNamespace,
metricName,
filterPattern: pattern_1.FilterPattern.exists(jsonField),
metricValue: jsonField
});
}
}
exports.LogGroupRef = LogGroupRef;
/**
* Define a CloudWatch Log Group
*/
class LogGroup extends LogGroupRef {
constructor(parent, id, props = {}) {
super(parent, id);
let retentionInDays = props.retentionDays;
if (retentionInDays === undefined) {
retentionInDays = 730;
}
if (retentionInDays === Infinity) {
retentionInDays = undefined;
}
if (retentionInDays !== undefined && retentionInDays <= 0) {
throw new Error(`retentionInDays must be positive, got ${retentionInDays}`);
}
const resource = new logs_generated_1.cloudformation.LogGroupResource(this, 'Resource', {
logGroupName: props.logGroupName,
retentionInDays,
});
if (props.retainLogGroup !== false) {
cdk.applyRemovalPolicy(resource, cdk.RemovalPolicy.Orphan);
}
this.logGroupArn = resource.logGroupArn;
this.logGroupName = resource.ref;
}
}
exports.LogGroup = LogGroup;
/**
* Name of a log group
* An imported CloudWatch Log Group
*/
class LogGroupName extends cdk.Token {
class ImportedLogGroup extends LogGroupRef {
constructor(parent, id, props) {
super(parent, id);
this.logGroupArn = props.logGroupArn;
this.logGroupName = new logs_generated_1.LogGroupName(props.logGroupArn.resourceNameComponent(':'));
}
}
exports.LogGroupName = LogGroupName;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWdyb3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibG9nLWdyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsb0NBQXFDO0FBQ3JDLDZDQUF5QztBQUN6QyxxREFBK0Q7QUFDL0QsbURBQStDO0FBRS9DLCtEQUF3RjtBQW1DeEY7O0dBRUc7QUFDSCxNQUFhLFFBQVMsU0FBUSxHQUFHLENBQUMsU0FBUztJQVd2QyxZQUFZLE1BQXFCLEVBQUUsRUFBVSxFQUFFLFFBQXVCLEVBQUU7UUFDcEUsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVsQixJQUFJLGVBQWUsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO1FBQzFDLElBQUksZUFBZSxLQUFLLFNBQVMsRUFBRTtZQUFFLGVBQWUsR0FBRyxHQUFHLENBQUM7U0FBRTtRQUM3RCxJQUFJLGVBQWUsS0FBSyxRQUFRLEVBQUU7WUFBRSxlQUFlLEdBQUcsU0FBUyxDQUFDO1NBQUU7UUFFbEUsSUFBSSxlQUFlLEtBQUssU0FBUyxJQUFJLGVBQWUsSUFBSSxDQUFDLEVBQUU7WUFDdkQsTUFBTSxJQUFJLEtBQUssQ0FBQyx5Q0FBeUMsZUFBZSxFQUFFLENBQUMsQ0FBQztTQUMvRTtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksK0JBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ25FLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtZQUNoQyxlQUFlO1NBQ2xCLENBQUMsQ0FBQztRQUVILElBQUksS0FBSyxDQUFDLGNBQWMsS0FBSyxLQUFLLEVBQUU7WUFDaEMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzlEO1FBRUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksU0FBUyxDQUFDLE1BQXFCLEVBQUUsRUFBVSxFQUFFLFFBQTJCLEVBQUU7UUFDN0UsT0FBTyxJQUFJLHNCQUFTLENBQUMsTUFBTSxFQUFFLEVBQUUsa0JBQzNCLFFBQVEsRUFBRSxJQUFJLElBQ1gsS0FBSyxFQUNWLENBQUM7SUFDUCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0kscUJBQXFCLENBQUMsTUFBcUIsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDN0YsT0FBTyxJQUFJLHdDQUFrQixDQUFDLE1BQU0sRUFBRSxFQUFFLGtCQUNwQyxRQUFRLEVBQUUsSUFBSSxJQUNYLEtBQUssRUFDVixDQUFDO0lBQ1AsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLGVBQWUsQ0FBQyxNQUFxQixFQUFFLEVBQVUsRUFBRSxLQUEyQjtRQUNqRixPQUFPLElBQUksNEJBQVksQ0FBQyxNQUFNLEVBQUUsRUFBRSxrQkFDOUIsUUFBUSxFQUFFLElBQUksSUFDWCxLQUFLLEVBQ1YsQ0FBQztJQUNQLENBQUM7Q0FDSjtBQTVFRCw0QkE0RUM7QUFFRDs7R0FFRztBQUNILE1BQWEsWUFBYSxTQUFRLEdBQUcsQ0FBQyxLQUFLO0NBQzFDO0FBREQsb0NBQ0MifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWdyb3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibG9nLWdyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsb0NBQXFDO0FBQ3JDLDZDQUF5QztBQUN6QyxxREFBNkU7QUFDN0UsbURBQStDO0FBQy9DLHVDQUEwRDtBQUMxRCwrREFBd0Y7QUFTeEY7O0dBRUc7QUFDSCxNQUFzQixXQUFZLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFDbkQ7O09BRUc7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQXFCLEVBQUUsRUFBVSxFQUFFLEtBQXVCO1FBQzNFLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFZRDs7Ozs7O09BTUc7SUFDSSxTQUFTLENBQUMsTUFBcUIsRUFBRSxFQUFVLEVBQUUsUUFBMkIsRUFBRTtRQUM3RSxPQUFPLElBQUksc0JBQVMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxrQkFDM0IsUUFBUSxFQUFFLElBQUksSUFDWCxLQUFLLEVBQ1YsQ0FBQztJQUNQLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxxQkFBcUIsQ0FBQyxNQUFxQixFQUFFLEVBQVUsRUFBRSxLQUFpQztRQUM3RixPQUFPLElBQUksd0NBQWtCLENBQUMsTUFBTSxFQUFFLEVBQUUsa0JBQ3BDLFFBQVEsRUFBRSxJQUFJLElBQ1gsS0FBSyxFQUNWLENBQUM7SUFDUCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksZUFBZSxDQUFDLE1BQXFCLEVBQUUsRUFBVSxFQUFFLEtBQTJCO1FBQ2pGLE9BQU8sSUFBSSw0QkFBWSxDQUFDLE1BQU0sRUFBRSxFQUFFLGtCQUM5QixRQUFRLEVBQUUsSUFBSSxJQUNYLEtBQUssRUFDVixDQUFDO0lBQ1AsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTTtRQUNULE9BQU87WUFDSCxXQUFXLEVBQUUsSUFBSSw0QkFBVyxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQ25ILENBQUM7SUFDTixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7OztPQVlHO0lBQ0ksYUFBYSxDQUFDLFNBQWlCLEVBQUUsZUFBdUIsRUFBRSxVQUFrQjtRQUMvRSxJQUFJLDRCQUFZLENBQUMsSUFBSSxFQUFFLEdBQUcsZUFBZSxJQUFJLFVBQVUsRUFBRSxFQUFFO1lBQ3ZELFFBQVEsRUFBRSxJQUFJO1lBQ2QsZUFBZTtZQUNmLFVBQVU7WUFDVixhQUFhLEVBQUUsdUJBQWEsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO1lBQzlDLFdBQVcsRUFBRSxTQUFTO1NBQ3pCLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSjtBQTNGRCxrQ0EyRkM7QUFtQ0Q7O0dBRUc7QUFDSCxNQUFhLFFBQVMsU0FBUSxXQUFXO0lBV3JDLFlBQVksTUFBcUIsRUFBRSxFQUFVLEVBQUUsUUFBdUIsRUFBRTtRQUNwRSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLElBQUksZUFBZSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7UUFDMUMsSUFBSSxlQUFlLEtBQUssU0FBUyxFQUFFO1lBQUUsZUFBZSxHQUFHLEdBQUcsQ0FBQztTQUFFO1FBQzdELElBQUksZUFBZSxLQUFLLFFBQVEsRUFBRTtZQUFFLGVBQWUsR0FBRyxTQUFTLENBQUM7U0FBRTtRQUVsRSxJQUFJLGVBQWUsS0FBSyxTQUFTLElBQUksZUFBZSxJQUFJLENBQUMsRUFBRTtZQUN2RCxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxlQUFlLEVBQUUsQ0FBQyxDQUFDO1NBQy9FO1FBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSwrQkFBYyxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDbkUsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZO1lBQ2hDLGVBQWU7U0FDbEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxLQUFLLENBQUMsY0FBYyxLQUFLLEtBQUssRUFBRTtZQUNoQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUQ7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDeEMsSUFBSSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQ3JDLENBQUM7Q0FDSjtBQWxDRCw0QkFrQ0M7QUFFRDs7R0FFRztBQUNILE1BQU0sZ0JBQWlCLFNBQVEsV0FBVztJQVd0QyxZQUFZLE1BQXFCLEVBQUUsRUFBVSxFQUFFLEtBQXVCO1FBQ2xFLEtBQUssQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSw2QkFBWSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN2RixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBMb2dTdHJlYW0gfSBmcm9tICcuL2xvZy1zdHJlYW0nO1xuaW1wb3J0IHsgY2xvdWRmb3JtYXRpb24sIExvZ0dyb3VwQXJuLCBMb2dHcm91cE5hbWUgfSBmcm9tICcuL2xvZ3MuZ2VuZXJhdGVkJztcbmltcG9ydCB7IE1ldHJpY0ZpbHRlciB9IGZyb20gJy4vbWV0cmljLWZpbHRlcic7XG5pbXBvcnQgeyBGaWx0ZXJQYXR0ZXJuLCBJRmlsdGVyUGF0dGVybiB9IGZyb20gJy4vcGF0dGVybic7XG5pbXBvcnQgeyBJTG9nU3Vic2NyaXB0aW9uRGVzdGluYXRpb24sIFN1YnNjcmlwdGlvbkZpbHRlciB9IGZyb20gJy4vc3Vic2NyaXB0aW9uLWZpbHRlcic7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgaW1wb3J0aW5nIGEgTG9nR3JvdXBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMb2dHcm91cFJlZlByb3BzIHtcbiAgICBsb2dHcm91cEFybjogTG9nR3JvdXBBcm47XG59XG5cbi8qKlxuICogQW4gQ2xvdWRXYXRjaCBMb2cgR3JvdXBcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExvZ0dyb3VwUmVmIGV4dGVuZHMgY2RrLkNvbnN0cnVjdCB7XG4gICAgLyoqXG4gICAgICogSW1wb3J0IGFuIGV4aXN0aW5nIExvZ0dyb3VwXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpbXBvcnQocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTG9nR3JvdXBSZWZQcm9wcyk6IExvZ0dyb3VwUmVmIHtcbiAgICAgICAgcmV0dXJuIG5ldyBJbXBvcnRlZExvZ0dyb3VwKHBhcmVudCwgaWQsIHByb3BzKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgQVJOIG9mIHRoaXMgbG9nIGdyb3VwXG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGxvZ0dyb3VwQXJuOiBMb2dHcm91cEFybjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoaXMgbG9nIGdyb3VwXG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGxvZ0dyb3VwTmFtZTogTG9nR3JvdXBOYW1lO1xuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlIGEgbmV3IExvZyBTdHJlYW0gZm9yIHRoaXMgTG9nIEdyb3VwXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcGFyZW50IFBhcmVudCBjb25zdHJ1Y3RcbiAgICAgKiBAcGFyYW0gaWQgVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBjb25zdHJ1Y3QgaW4gaXRzIHBhcmVudFxuICAgICAqIEBwYXJhbSBwcm9wcyBQcm9wZXJ0aWVzIGZvciBjcmVhdGluZyB0aGUgTG9nU3RyZWFtXG4gICAgICovXG4gICAgcHVibGljIG5ld1N0cmVhbShwYXJlbnQ6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBOZXdMb2dTdHJlYW1Qcm9wcyA9IHt9KTogTG9nU3RyZWFtIHtcbiAgICAgICAgcmV0dXJuIG5ldyBMb2dTdHJlYW0ocGFyZW50LCBpZCwge1xuICAgICAgICAgICAgbG9nR3JvdXA6IHRoaXMsXG4gICAgICAgICAgICAuLi5wcm9wc1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGUgYSBuZXcgU3Vic2NyaXB0aW9uIEZpbHRlciBvbiB0aGlzIExvZyBHcm91cFxuICAgICAqXG4gICAgICogQHBhcmFtIHBhcmVudCBQYXJlbnQgY29uc3RydWN0XG4gICAgICogQHBhcmFtIGlkIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29uc3RydWN0IGluIGl0cyBwYXJlbnRcbiAgICAgKiBAcGFyYW0gcHJvcHMgUHJvcGVydGllcyBmb3IgY3JlYXRpbmcgdGhlIFN1YnNjcmlwdGlvbkZpbHRlclxuICAgICAqL1xuICAgIHB1YmxpYyBuZXdTdWJzY3JpcHRpb25GaWx0ZXIocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV3U3Vic2NyaXB0aW9uRmlsdGVyUHJvcHMpOiBTdWJzY3JpcHRpb25GaWx0ZXIge1xuICAgICAgICByZXR1cm4gbmV3IFN1YnNjcmlwdGlvbkZpbHRlcihwYXJlbnQsIGlkLCB7XG4gICAgICAgICAgICBsb2dHcm91cDogdGhpcyxcbiAgICAgICAgICAgIC4uLnByb3BzXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIG5ldyBNZXRyaWMgRmlsdGVyIG9uIHRoaXMgTG9nIEdyb3VwXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcGFyZW50IFBhcmVudCBjb25zdHJ1Y3RcbiAgICAgKiBAcGFyYW0gaWQgVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBjb25zdHJ1Y3QgaW4gaXRzIHBhcmVudFxuICAgICAqIEBwYXJhbSBwcm9wcyBQcm9wZXJ0aWVzIGZvciBjcmVhdGluZyB0aGUgTWV0cmljRmlsdGVyXG4gICAgICovXG4gICAgcHVibGljIG5ld01ldHJpY0ZpbHRlcihwYXJlbnQ6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBOZXdNZXRyaWNGaWx0ZXJQcm9wcyk6IE1ldHJpY0ZpbHRlciB7XG4gICAgICAgIHJldHVybiBuZXcgTWV0cmljRmlsdGVyKHBhcmVudCwgaWQsIHtcbiAgICAgICAgICAgIGxvZ0dyb3VwOiB0aGlzLFxuICAgICAgICAgICAgLi4ucHJvcHNcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRXhwb3J0IHRoaXMgTG9nR3JvdXBcbiAgICAgKi9cbiAgICBwdWJsaWMgZXhwb3J0KCk6IExvZ0dyb3VwUmVmUHJvcHMge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbG9nR3JvdXBBcm46IG5ldyBMb2dHcm91cEFybihuZXcgY2RrLk91dHB1dCh0aGlzLCAnTG9nR3JvdXBBcm4nLCB7IHZhbHVlOiB0aGlzLmxvZ0dyb3VwQXJuIH0pLm1ha2VJbXBvcnRWYWx1ZSgpKVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV4dHJhY3QgYSBtZXRyaWMgZnJvbSBzdHJ1Y3R1cmVkIGxvZyBldmVudHMgaW4gdGhlIExvZ0dyb3VwXG4gICAgICpcbiAgICAgKiBDcmVhdGVzIGEgTWV0cmljRmlsdGVyIG9uIHRoaXMgTG9nR3JvdXAgdGhhdCB3aWxsIGV4dHJhY3QgdGhlIHZhbHVlXG4gICAgICogb2YgdGhlIGluZGljYXRlZCBKU09OIGZpZWxkIGluIGFsbCByZWNvcmRzIHdoZXJlIGl0IG9jY3Vycy5cbiAgICAgKlxuICAgICAqIFRoZSBtZXRyaWMgd2lsbCBiZSBhdmFpbGFibGUgaW4gQ2xvdWRXYXRjaCBNZXRyaWNzIHVuZGVyIHRoZVxuICAgICAqIGluZGljYXRlZCBuYW1lc3BhY2UgYW5kIG5hbWUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ganNvbkZpZWxkIEpTT04gZmllbGQgdG8gZXh0cmFjdCAoZXhhbXBsZTogJyQubXlmaWVsZCcpXG4gICAgICogQHBhcmFtIG1ldHJpY05hbWVzcGFjZSBOYW1lc3BhY2UgdG8gZW1pdCB0aGUgbWV0cmljIHVuZGVyXG4gICAgICogQHBhcmFtIG1ldHJpY05hbWUgTmFtZSB0byBlbWl0IHRoZSBtZXRyaWMgdW5kZXJcbiAgICAgKi9cbiAgICBwdWJsaWMgZXh0cmFjdE1ldHJpYyhqc29uRmllbGQ6IHN0cmluZywgbWV0cmljTmFtZXNwYWNlOiBzdHJpbmcsIG1ldHJpY05hbWU6IHN0cmluZykge1xuICAgICAgICBuZXcgTWV0cmljRmlsdGVyKHRoaXMsIGAke21ldHJpY05hbWVzcGFjZX1fJHttZXRyaWNOYW1lfWAsIHtcbiAgICAgICAgICAgIGxvZ0dyb3VwOiB0aGlzLFxuICAgICAgICAgICAgbWV0cmljTmFtZXNwYWNlLFxuICAgICAgICAgICAgbWV0cmljTmFtZSxcbiAgICAgICAgICAgIGZpbHRlclBhdHRlcm46IEZpbHRlclBhdHRlcm4uZXhpc3RzKGpzb25GaWVsZCksXG4gICAgICAgICAgICBtZXRyaWNWYWx1ZToganNvbkZpZWxkXG4gICAgICAgIH0pO1xuICAgIH1cbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIExvZ0dyb3VwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nR3JvdXBQcm9wcyB7XG4gICAgLyoqXG4gICAgICogTmFtZSBvZiB0aGUgbG9nIGdyb3VwLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgQXV0b21hdGljYWxseSBnZW5lcmF0ZWRcbiAgICAgKi9cbiAgICBsb2dHcm91cE5hbWU/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBIb3cgbG9uZywgaW4gZGF5cywgdGhlIGxvZyBjb250ZW50cyB3aWxsIGJlIHJldGFpbmVkLlxuICAgICAqXG4gICAgICogVG8gcmV0YWluIGFsbCBsb2dzLCBzZXQgdGhpcyB2YWx1ZSB0byBJbmZpbml0eS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IDczMCBkYXlzICgyIHllYXJzKVxuICAgICAqL1xuICAgIHJldGVudGlvbkRheXM/OiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBSZXRhaW4gdGhlIGxvZyBncm91cCBpZiB0aGUgc3RhY2sgb3IgY29udGFpbmluZyBjb25zdHJ1Y3QgY2Vhc2VzIHRvIGV4aXN0XG4gICAgICpcbiAgICAgKiBOb3JtYWxseSB5b3Ugd2FudCB0byByZXRhaW4gdGhlIGxvZyBncm91cCBzbyB5b3UgY2FuIGRpYWdub3NlIGlzc3Vlc1xuICAgICAqIGZyb20gbG9ncyBldmVuIGFmdGVyIGEgZGVwbG95bWVudCB0aGF0IG5vIGxvbmdlciBpbmNsdWRlcyB0aGUgbG9nIGdyb3VwLlxuICAgICAqIEluIHRoYXQgY2FzZSwgdXNlIHRoZSBub3JtYWwgZGF0ZS1iYXNlZCByZXRlbnRpb24gcG9saWN5IHRvIGFnZSBvdXQgeW91clxuICAgICAqIGxvZ3MuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgcmV0YWluTG9nR3JvdXA/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIERlZmluZSBhIENsb3VkV2F0Y2ggTG9nIEdyb3VwXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dHcm91cCBleHRlbmRzIExvZ0dyb3VwUmVmIHtcbiAgICAvKipcbiAgICAgKiBUaGUgQVJOIG9mIHRoaXMgbG9nIGdyb3VwXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGxvZ0dyb3VwQXJuOiBMb2dHcm91cEFybjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoaXMgbG9nIGdyb3VwXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGxvZ0dyb3VwTmFtZTogTG9nR3JvdXBOYW1lO1xuXG4gICAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTG9nR3JvdXBQcm9wcyA9IHt9KSB7XG4gICAgICAgIHN1cGVyKHBhcmVudCwgaWQpO1xuXG4gICAgICAgIGxldCByZXRlbnRpb25JbkRheXMgPSBwcm9wcy5yZXRlbnRpb25EYXlzO1xuICAgICAgICBpZiAocmV0ZW50aW9uSW5EYXlzID09PSB1bmRlZmluZWQpIHsgcmV0ZW50aW9uSW5EYXlzID0gNzMwOyB9XG4gICAgICAgIGlmIChyZXRlbnRpb25JbkRheXMgPT09IEluZmluaXR5KSB7IHJldGVudGlvbkluRGF5cyA9IHVuZGVmaW5lZDsgfVxuXG4gICAgICAgIGlmIChyZXRlbnRpb25JbkRheXMgIT09IHVuZGVmaW5lZCAmJiByZXRlbnRpb25JbkRheXMgPD0gMCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGByZXRlbnRpb25JbkRheXMgbXVzdCBiZSBwb3NpdGl2ZSwgZ290ICR7cmV0ZW50aW9uSW5EYXlzfWApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgY2xvdWRmb3JtYXRpb24uTG9nR3JvdXBSZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICAgICAgICBsb2dHcm91cE5hbWU6IHByb3BzLmxvZ0dyb3VwTmFtZSxcbiAgICAgICAgICAgIHJldGVudGlvbkluRGF5cyxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHByb3BzLnJldGFpbkxvZ0dyb3VwICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgY2RrLmFwcGx5UmVtb3ZhbFBvbGljeShyZXNvdXJjZSwgY2RrLlJlbW92YWxQb2xpY3kuT3JwaGFuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubG9nR3JvdXBBcm4gPSByZXNvdXJjZS5sb2dHcm91cEFybjtcbiAgICAgICAgdGhpcy5sb2dHcm91cE5hbWUgPSByZXNvdXJjZS5yZWY7XG4gICAgfVxufVxuXG4vKipcbiAqIEFuIGltcG9ydGVkIENsb3VkV2F0Y2ggTG9nIEdyb3VwXG4gKi9cbmNsYXNzIEltcG9ydGVkTG9nR3JvdXAgZXh0ZW5kcyBMb2dHcm91cFJlZiB7XG4gICAgLyoqXG4gICAgICogVGhlIEFSTiBvZiB0aGlzIGxvZyBncm91cFxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBsb2dHcm91cEFybjogTG9nR3JvdXBBcm47XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGlzIGxvZyBncm91cFxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBsb2dHcm91cE5hbWU6IExvZ0dyb3VwTmFtZTtcblxuICAgIGNvbnN0cnVjdG9yKHBhcmVudDogY2RrLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IExvZ0dyb3VwUmVmUHJvcHMpIHtcbiAgICAgICAgc3VwZXIocGFyZW50LCBpZCk7XG5cbiAgICAgICAgdGhpcy5sb2dHcm91cEFybiA9IHByb3BzLmxvZ0dyb3VwQXJuO1xuICAgICAgICB0aGlzLmxvZ0dyb3VwTmFtZSA9IG5ldyBMb2dHcm91cE5hbWUocHJvcHMubG9nR3JvdXBBcm4ucmVzb3VyY2VOYW1lQ29tcG9uZW50KCc6JykpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIG5ldyBMb2dTdHJlYW0gY3JlYXRlZCBmcm9tIGEgTG9nR3JvdXBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXdMb2dTdHJlYW1Qcm9wcyB7XG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIGxvZyBzdHJlYW0gdG8gY3JlYXRlLlxuICAgICAqXG4gICAgICogVGhlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBsb2cgZ3JvdXAuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZFxuICAgICAqL1xuICAgIGxvZ1N0cmVhbU5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgU3Vic2NyaXB0aW9uRmlsdGVyIGNyZWF0ZWQgZnJvbSBhIExvZ0dyb3VwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmV3U3Vic2NyaXB0aW9uRmlsdGVyUHJvcHMge1xuICAgIC8qKlxuICAgICAqIFRoZSBkZXN0aW5hdGlvbiB0byBzZW5kIHRoZSBmaWx0ZXJlZCBldmVudHMgdG8uXG4gICAgICpcbiAgICAgKiBGb3IgZXhhbXBsZSwgYSBLaW5lc2lzIHN0cmVhbSBvciBhIExhbWJkYSBmdW5jdGlvbi5cbiAgICAgKi9cbiAgICBkZXN0aW5hdGlvbjogSUxvZ1N1YnNjcmlwdGlvbkRlc3RpbmF0aW9uO1xuXG4gICAgLyoqXG4gICAgICogTG9nIGV2ZW50cyBtYXRjaGluZyB0aGlzIHBhdHRlcm4gd2lsbCBiZSBzZW50IHRvIHRoZSBkZXN0aW5hdGlvbi5cbiAgICAgKi9cbiAgICBmaWx0ZXJQYXR0ZXJuOiBJRmlsdGVyUGF0dGVybjtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIE1ldHJpY0ZpbHRlciBjcmVhdGVkIGZyb20gYSBMb2dHcm91cFxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5ld01ldHJpY0ZpbHRlclByb3BzIHtcbiAgICAvKipcbiAgICAgKiBQYXR0ZXJuIHRvIHNlYXJjaCBmb3IgbG9nIGV2ZW50cy5cbiAgICAgKi9cbiAgICBmaWx0ZXJQYXR0ZXJuOiBJRmlsdGVyUGF0dGVybjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lc3BhY2Ugb2YgdGhlIG1ldHJpYyB0byBlbWl0LlxuICAgICAqL1xuICAgIG1ldHJpY05hbWVzcGFjZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIG1ldHJpYyB0byBlbWl0LlxuICAgICAqL1xuICAgIG1ldHJpY05hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSB2YWx1ZSB0byBlbWl0IGZvciB0aGUgbWV0cmljLlxuICAgICAqXG4gICAgICogQ2FuIGVpdGhlciBiZSBhIGxpdGVyYWwgbnVtYmVyICh0eXBpY2FsbHkgXCIxXCIpLCBvciB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBzdHJ1Y3R1cmVcbiAgICAgKiB0byB0YWtlIHRoZSB2YWx1ZSBmcm9tIHRoZSBtYXRjaGVkIGV2ZW50LiBJZiB5b3UgYXJlIHVzaW5nIGEgZmllbGQgdmFsdWUsIHRoZSBmaWVsZFxuICAgICAqIHZhbHVlIG11c3QgaGF2ZSBiZWVuIG1hdGNoZWQgdXNpbmcgdGhlIHBhdHRlcm4uXG4gICAgICpcbiAgICAgKiBJZiB5b3Ugd2FudCB0byBzcGVjaWZ5IGEgZmllbGQgZnJvbSBhIG1hdGNoZWQgSlNPTiBzdHJ1Y3R1cmUsIHVzZSAnJC5maWVsZE5hbWUnLFxuICAgICAqIGFuZCBtYWtlIHN1cmUgdGhlIGZpZWxkIGlzIGluIHRoZSBwYXR0ZXJuIChpZiBvbmx5IGFzICckLmZpZWxkTmFtZSA9IConKS5cbiAgICAgKlxuICAgICAqIElmIHlvdSB3YW50IHRvIHNwZWNpZnkgYSBmaWVsZCBmcm9tIGEgbWF0Y2hlZCBzcGFjZS1kZWxpbWl0ZWQgc3RydWN0dXJlLFxuICAgICAqIHVzZSAnJGZpZWxkTmFtZScuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBcIjFcIlxuICAgICAqL1xuICAgIG1ldHJpY1ZhbHVlPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHZhbHVlIHRvIGVtaXQgaWYgdGhlIHBhdHRlcm4gZG9lcyBub3QgbWF0Y2ggYSBwYXJ0aWN1bGFyIGV2ZW50LlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgTm8gbWV0cmljIGVtaXR0ZWQuXG4gICAgICovXG4gICAgZGVmYXVsdFZhbHVlPzogbnVtYmVyO1xufVxuIl19
import cdk = require('@aws-cdk/cdk');
import { LogGroup } from './log-group';
import { LogGroupRef } from './log-group';
import { LogStreamName } from './logs.generated';
/**
* Properties for a new LogStream
* Properties for importing a LogStream
*/
export interface LogStreamRefProps {
logStreamName: LogStreamName;
}
/**
* A Log Stream in a Log Group
*/
export declare abstract class LogStreamRef extends cdk.Construct {
/**
* Import an existing LogGroup
*/
static import(parent: cdk.Construct, id: string, props: LogStreamRefProps): LogStreamRef;
/**
* The name of this log stream
*/
abstract readonly logStreamName: LogStreamName;
/**
* Export this LogStream
*/
export(): LogStreamRefProps;
}
/**
* Properties for a LogStream
*/
export interface LogStreamProps {

@@ -10,3 +34,3 @@ /**

*/
logGroup: LogGroup;
logGroup: LogGroupRef;
/**

@@ -34,5 +58,5 @@ * The name of the log stream to create.

/**
* A new Log Stream in a Log Group
* Define a Log Stream in a Log Group
*/
export declare class LogStream extends cdk.Construct {
export declare class LogStream extends LogStreamRef {
/**

@@ -44,6 +68,1 @@ * The name of this log stream

}
/**
* The name of a log stream
*/
export declare class LogStreamName extends cdk.Token {
}

@@ -6,5 +6,25 @@ "use strict";

/**
* A new Log Stream in a Log Group
* A Log Stream in a Log Group
*/
class LogStream extends cdk.Construct {
class LogStreamRef extends cdk.Construct {
/**
* Import an existing LogGroup
*/
static import(parent, id, props) {
return new ImportedLogStream(parent, id, props);
}
/**
* Export this LogStream
*/
export() {
return {
logStreamName: new logs_generated_1.LogStreamName(new cdk.Output(this, 'LogStreamName', { value: this.logStreamName }).makeImportValue())
};
}
}
exports.LogStreamRef = LogStreamRef;
/**
* Define a Log Stream in a Log Group
*/
class LogStream extends LogStreamRef {
constructor(parent, id, props) {

@@ -24,7 +44,10 @@ super(parent, id);

/**
* The name of a log stream
* An imported LogStream
*/
class LogStreamName extends cdk.Token {
class ImportedLogStream extends LogStreamRef {
constructor(parent, id, props) {
super(parent, id);
this.logStreamName = props.logStreamName;
}
}
exports.LogStreamName = LogStreamName;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLXN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImxvZy1zdHJlYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBcUM7QUFFckMscURBQWtEO0FBa0NsRDs7R0FFRztBQUNILE1BQWEsU0FBVSxTQUFRLEdBQUcsQ0FBQyxTQUFTO0lBTXhDLFlBQVksTUFBcUIsRUFBRSxFQUFVLEVBQUUsS0FBcUI7UUFDaEUsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVsQixNQUFNLFFBQVEsR0FBRyxJQUFJLCtCQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNwRSxZQUFZLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZO1lBQ3pDLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtTQUNyQyxDQUFDLENBQUM7UUFFSCxJQUFJLEtBQUssQ0FBQyxlQUFlLEtBQUssS0FBSyxFQUFFO1lBQ2pDLFFBQVEsQ0FBQyxPQUFPLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDO1NBQy9EO1FBRUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQ3RDLENBQUM7Q0FDSjtBQXBCRCw4QkFvQkM7QUFFRDs7R0FFRztBQUNILE1BQWEsYUFBYyxTQUFRLEdBQUcsQ0FBQyxLQUFLO0NBQzNDO0FBREQsc0NBQ0MifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLXN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImxvZy1zdHJlYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBcUM7QUFFckMscURBQWlFO0FBU2pFOztHQUVHO0FBQ0gsTUFBc0IsWUFBYSxTQUFRLEdBQUcsQ0FBQyxTQUFTO0lBQ3BEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFxQixFQUFFLEVBQVUsRUFBRSxLQUF3QjtRQUM1RSxPQUFPLElBQUksaUJBQWlCLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBT0Q7O09BRUc7SUFDSSxNQUFNO1FBQ1QsT0FBTztZQUNILGFBQWEsRUFBRSxJQUFJLDhCQUFhLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDM0gsQ0FBQztJQUNOLENBQUM7Q0FDSjtBQXJCRCxvQ0FxQkM7QUFrQ0Q7O0dBRUc7QUFDSCxNQUFhLFNBQVUsU0FBUSxZQUFZO0lBTXZDLFlBQVksTUFBcUIsRUFBRSxFQUFVLEVBQUUsS0FBcUI7UUFDaEUsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVsQixNQUFNLFFBQVEsR0FBRyxJQUFJLCtCQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNwRSxZQUFZLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZO1lBQ3pDLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtTQUNyQyxDQUFDLENBQUM7UUFFSCxJQUFJLEtBQUssQ0FBQyxlQUFlLEtBQUssS0FBSyxFQUFFO1lBQ2pDLFFBQVEsQ0FBQyxPQUFPLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDO1NBQy9EO1FBRUQsSUFBSSxDQUFDLGFBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQ3RDLENBQUM7Q0FDSjtBQXBCRCw4QkFvQkM7QUFFRDs7R0FFRztBQUNILE1BQU0saUJBQWtCLFNBQVEsWUFBWTtJQU14QyxZQUFZLE1BQXFCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ25FLEtBQUssQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFbEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IExvZ0dyb3VwUmVmIH0gZnJvbSAnLi9sb2ctZ3JvdXAnO1xuaW1wb3J0IHsgY2xvdWRmb3JtYXRpb24sIExvZ1N0cmVhbU5hbWUgfSBmcm9tICcuL2xvZ3MuZ2VuZXJhdGVkJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBpbXBvcnRpbmcgYSBMb2dTdHJlYW1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMb2dTdHJlYW1SZWZQcm9wcyB7XG4gICAgbG9nU3RyZWFtTmFtZTogTG9nU3RyZWFtTmFtZTtcbn1cblxuLyoqXG4gKiBBIExvZyBTdHJlYW0gaW4gYSBMb2cgR3JvdXBcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExvZ1N0cmVhbVJlZiBleHRlbmRzIGNkay5Db25zdHJ1Y3Qge1xuICAgIC8qKlxuICAgICAqIEltcG9ydCBhbiBleGlzdGluZyBMb2dHcm91cFxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgaW1wb3J0KHBhcmVudDogY2RrLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IExvZ1N0cmVhbVJlZlByb3BzKTogTG9nU3RyZWFtUmVmIHtcbiAgICAgICAgcmV0dXJuIG5ldyBJbXBvcnRlZExvZ1N0cmVhbShwYXJlbnQsIGlkLCBwcm9wcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhpcyBsb2cgc3RyZWFtXG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGxvZ1N0cmVhbU5hbWU6IExvZ1N0cmVhbU5hbWU7XG5cbiAgICAvKipcbiAgICAgKiBFeHBvcnQgdGhpcyBMb2dTdHJlYW1cbiAgICAgKi9cbiAgICBwdWJsaWMgZXhwb3J0KCk6IExvZ1N0cmVhbVJlZlByb3BzIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGxvZ1N0cmVhbU5hbWU6IG5ldyBMb2dTdHJlYW1OYW1lKG5ldyBjZGsuT3V0cHV0KHRoaXMsICdMb2dTdHJlYW1OYW1lJywgeyB2YWx1ZTogdGhpcy5sb2dTdHJlYW1OYW1lIH0pLm1ha2VJbXBvcnRWYWx1ZSgpKVxuICAgICAgICB9O1xuICAgIH1cbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIExvZ1N0cmVhbVxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvZ1N0cmVhbVByb3BzIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbG9nIGdyb3VwIHRvIGNyZWF0ZSBhIGxvZyBzdHJlYW0gZm9yLlxuICAgICAqL1xuICAgIGxvZ0dyb3VwOiBMb2dHcm91cFJlZjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoZSBsb2cgc3RyZWFtIHRvIGNyZWF0ZS5cbiAgICAgKlxuICAgICAqIFRoZSBuYW1lIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgbG9nIGdyb3VwLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgQXV0b21hdGljYWxseSBnZW5lcmF0ZWRcbiAgICAgKi9cbiAgICBsb2dTdHJlYW1OYW1lPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogUmV0YWluIHRoZSBsb2cgc3RyZWFtIGlmIHRoZSBzdGFjayBvciBjb250YWluaW5nIGNvbnN0cnVjdCBjZWFzZXMgdG8gZXhpc3RcbiAgICAgKlxuICAgICAqIE5vcm1hbGx5IHlvdSB3YW50IHRvIHJldGFpbiB0aGUgbG9nIHN0cmVhbSBzbyB5b3UgY2FuIGRpYWdub3NlIGlzc3Vlc1xuICAgICAqIGZyb20gbG9ncyBldmVuIGFmdGVyIGEgZGVwbG95bWVudCB0aGF0IG5vIGxvbmdlciBpbmNsdWRlcyB0aGUgbG9nIHN0cmVhbS5cbiAgICAgKlxuICAgICAqIFRoZSBkYXRlLWJhc2VkIHJldGVudGlvbiBwb2xpY3kgb2YgeW91ciBsb2cgZ3JvdXAgd2lsbCBhZ2Ugb3V0IHRoZSBsb2dzXG4gICAgICogYWZ0ZXIgYSBjZXJ0YWluIHRpbWUuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgcmV0YWluTG9nU3RyZWFtPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBEZWZpbmUgYSBMb2cgU3RyZWFtIGluIGEgTG9nIEdyb3VwXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dTdHJlYW0gZXh0ZW5kcyBMb2dTdHJlYW1SZWYge1xuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoaXMgbG9nIHN0cmVhbVxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBsb2dTdHJlYW1OYW1lOiBMb2dTdHJlYW1OYW1lO1xuXG4gICAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTG9nU3RyZWFtUHJvcHMpIHtcbiAgICAgICAgc3VwZXIocGFyZW50LCBpZCk7XG5cbiAgICAgICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgY2xvdWRmb3JtYXRpb24uTG9nU3RyZWFtUmVzb3VyY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgICAgICAgbG9nR3JvdXBOYW1lOiBwcm9wcy5sb2dHcm91cC5sb2dHcm91cE5hbWUsXG4gICAgICAgICAgICBsb2dTdHJlYW1OYW1lOiBwcm9wcy5sb2dTdHJlYW1OYW1lXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChwcm9wcy5yZXRhaW5Mb2dTdHJlYW0gIT09IGZhbHNlKSB7XG4gICAgICAgICAgICByZXNvdXJjZS5vcHRpb25zLmRlbGV0aW9uUG9saWN5ID0gY2RrLkRlbGV0aW9uUG9saWN5LlJldGFpbjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubG9nU3RyZWFtTmFtZSA9IHJlc291cmNlLnJlZjtcbiAgICB9XG59XG5cbi8qKlxuICogQW4gaW1wb3J0ZWQgTG9nU3RyZWFtXG4gKi9cbmNsYXNzIEltcG9ydGVkTG9nU3RyZWFtIGV4dGVuZHMgTG9nU3RyZWFtUmVmIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGlzIGxvZyBzdHJlYW1cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgbG9nU3RyZWFtTmFtZTogTG9nU3RyZWFtTmFtZTtcblxuICAgIGNvbnN0cnVjdG9yKHBhcmVudDogY2RrLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IExvZ1N0cmVhbVJlZlByb3BzKSB7XG4gICAgICAgIHN1cGVyKHBhcmVudCwgaWQpO1xuXG4gICAgICAgIHRoaXMubG9nU3RyZWFtTmFtZSA9IHByb3BzLmxvZ1N0cmVhbU5hbWU7XG4gICAgfVxufSJdfQ==

@@ -11,3 +11,3 @@ import cdk = require('@aws-cdk/cdk');

*/
destinationName: string | cdk.Token;
destinationName: string | cdk.CloudFormationToken;
/**

@@ -17,3 +17,3 @@ * ``AWS::Logs::Destination.DestinationPolicy``

*/
destinationPolicy: string | cdk.Token;
destinationPolicy: string | cdk.CloudFormationToken;
/**

@@ -23,3 +23,3 @@ * ``AWS::Logs::Destination.RoleArn``

*/
roleArn: string | cdk.Token;
roleArn: string | cdk.CloudFormationToken;
/**

@@ -29,3 +29,3 @@ * ``AWS::Logs::Destination.TargetArn``

*/
targetArn: string | cdk.Token;
targetArn: string | cdk.CloudFormationToken;
}

@@ -44,2 +44,3 @@ /**

readonly destinationArn: DestinationArn;
readonly ref: DestinationName;
/**

@@ -59,3 +60,7 @@ * Creates a new ``AWS::Logs::Destination``.

export declare class DestinationArn extends cdk.Arn {
private readonly thisIsADestinationArn;
}
export declare class DestinationName extends cdk.CloudFormationToken {
private readonly thisIsADestinationName;
}
export declare namespace cloudformation {

@@ -70,3 +75,3 @@ /**

*/
logGroupName?: string | cdk.Token;
logGroupName?: string | cdk.CloudFormationToken;
/**

@@ -76,3 +81,3 @@ * ``AWS::Logs::LogGroup.RetentionInDays``

*/
retentionInDays?: number | cdk.Token;
retentionInDays?: number | cdk.CloudFormationToken;
}

@@ -91,2 +96,3 @@ /**

readonly logGroupArn: LogGroupArn;
readonly ref: LogGroupName;
/**

@@ -106,3 +112,7 @@ * Creates a new ``AWS::Logs::LogGroup``.

export declare class LogGroupArn extends cdk.Arn {
private readonly thisIsALogGroupArn;
}
export declare class LogGroupName extends cdk.CloudFormationToken {
private readonly thisIsALogGroupName;
}
export declare namespace cloudformation {

@@ -117,3 +127,3 @@ /**

*/
logGroupName: string | cdk.Token;
logGroupName: string | cdk.CloudFormationToken;
/**

@@ -123,3 +133,3 @@ * ``AWS::Logs::LogStream.LogStreamName``

*/
logStreamName?: string | cdk.Token;
logStreamName?: string | cdk.CloudFormationToken;
}

@@ -134,2 +144,3 @@ /**

static readonly resourceTypeName: string;
readonly ref: LogStreamName;
/**

@@ -148,2 +159,5 @@ * Creates a new ``AWS::Logs::LogStream``.

}
export declare class LogStreamName extends cdk.CloudFormationToken {
private readonly thisIsALogStreamName;
}
export declare namespace cloudformation {

@@ -158,3 +172,3 @@ /**

*/
filterPattern: string | cdk.Token;
filterPattern: string | cdk.CloudFormationToken;
/**

@@ -164,3 +178,3 @@ * ``AWS::Logs::MetricFilter.LogGroupName``

*/
logGroupName: string | cdk.Token;
logGroupName: string | cdk.CloudFormationToken;
/**

@@ -170,3 +184,3 @@ * ``AWS::Logs::MetricFilter.MetricTransformations``

*/
metricTransformations: Array<MetricFilterResource.MetricTransformationProperty | cdk.Token> | cdk.Token;
metricTransformations: Array<MetricFilterResource.MetricTransformationProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -181,2 +195,3 @@ /**

static readonly resourceTypeName: string;
readonly ref: MetricFilterName;
/**

@@ -203,3 +218,3 @@ * Creates a new ``AWS::Logs::MetricFilter``.

*/
defaultValue?: number | cdk.Token;
defaultValue?: number | cdk.CloudFormationToken;
/**

@@ -209,3 +224,3 @@ * ``MetricFilterResource.MetricTransformationProperty.MetricName``

*/
metricName: string | cdk.Token;
metricName: string | cdk.CloudFormationToken;
/**

@@ -215,3 +230,3 @@ * ``MetricFilterResource.MetricTransformationProperty.MetricNamespace``

*/
metricNamespace: string | cdk.Token;
metricNamespace: string | cdk.CloudFormationToken;
/**

@@ -221,6 +236,9 @@ * ``MetricFilterResource.MetricTransformationProperty.MetricValue``

*/
metricValue: string | cdk.Token;
metricValue: string | cdk.CloudFormationToken;
}
}
}
export declare class MetricFilterName extends cdk.CloudFormationToken {
private readonly thisIsAMetricFilterName;
}
export declare namespace cloudformation {

@@ -235,3 +253,3 @@ /**

*/
destinationArn: string | cdk.Token;
destinationArn: string | cdk.CloudFormationToken;
/**

@@ -241,3 +259,3 @@ * ``AWS::Logs::SubscriptionFilter.FilterPattern``

*/
filterPattern: string | cdk.Token;
filterPattern: string | cdk.CloudFormationToken;
/**

@@ -247,3 +265,3 @@ * ``AWS::Logs::SubscriptionFilter.LogGroupName``

*/
logGroupName: string | cdk.Token;
logGroupName: string | cdk.CloudFormationToken;
/**

@@ -253,3 +271,3 @@ * ``AWS::Logs::SubscriptionFilter.RoleArn``

*/
roleArn?: string | cdk.Token;
roleArn?: string | cdk.CloudFormationToken;
}

@@ -264,2 +282,3 @@ /**

static readonly resourceTypeName: string;
readonly ref: SubscriptionFilterName;
/**

@@ -278,1 +297,4 @@ * Creates a new ``AWS::Logs::SubscriptionFilter``.

}
export declare class SubscriptionFilterName extends cdk.CloudFormationToken {
private readonly thisIsASubscriptionFilterName;
}
import cdk = require('@aws-cdk/cdk');
import { LogGroup } from './log-group';
import { LogGroupRef } from './log-group';
import { IFilterPattern } from './pattern';

@@ -11,3 +11,3 @@ /**

*/
logGroup: LogGroup;
logGroup: LogGroupRef;
/**

@@ -14,0 +14,0 @@ * Pattern to search for log events.

@@ -11,2 +11,10 @@ "use strict";

super(parent, id);
// It looks odd to map this object to a singleton list, but that's how
// we're supposed to do it according to the docs.
//
// > Currently, you can specify only one metric transformation for
// > each metric filter. If you want to specify multiple metric
// > transformations, you must specify multiple metric filters.
//
// https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html
new logs_generated_1.cloudformation.MetricFilterResource(this, 'Resource', {

@@ -25,2 +33,2 @@ logGroupName: props.logGroup.logGroupName,

exports.MetricFilter = MetricFilter;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1ldHJpYy1maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBcUM7QUFFckMscURBQWtEO0FBb0RsRDs7R0FFRztBQUNILE1BQWEsWUFBYSxTQUFRLEdBQUcsQ0FBQyxTQUFTO0lBQzNDLFlBQVksTUFBcUIsRUFBRSxFQUFVLEVBQUUsS0FBd0I7UUFDbkUsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVsQixJQUFJLCtCQUFjLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUN0RCxZQUFZLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZO1lBQ3pDLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLGdCQUFnQjtZQUNuRCxxQkFBcUIsRUFBRSxDQUFDO29CQUNwQixlQUFlLEVBQUUsS0FBSyxDQUFDLGVBQWU7b0JBQ3RDLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtvQkFDNUIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxHQUFHO29CQUN0RSxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7aUJBQ25DLENBQUM7U0FDTCxDQUFDLENBQUM7SUFDUCxDQUFDO0NBQ0o7QUFmRCxvQ0FlQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1ldHJpYy1maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBcUM7QUFFckMscURBQWtEO0FBb0RsRDs7R0FFRztBQUNILE1BQWEsWUFBYSxTQUFRLEdBQUcsQ0FBQyxTQUFTO0lBQzNDLFlBQVksTUFBcUIsRUFBRSxFQUFVLEVBQUUsS0FBd0I7UUFDbkUsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVsQixzRUFBc0U7UUFDdEUsaURBQWlEO1FBQ2pELEVBQUU7UUFDRixrRUFBa0U7UUFDbEUsK0RBQStEO1FBQy9ELCtEQUErRDtRQUMvRCxFQUFFO1FBQ0YscUdBQXFHO1FBQ3JHLElBQUksK0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3RELFlBQVksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVk7WUFDekMsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsZ0JBQWdCO1lBQ25ELHFCQUFxQixFQUFFLENBQUM7b0JBQ3BCLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZTtvQkFDdEMsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO29CQUM1QixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVcsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUc7b0JBQ3RFLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtpQkFDbkMsQ0FBQztTQUNMLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSjtBQXZCRCxvQ0F1QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBMb2dHcm91cFJlZiB9IGZyb20gJy4vbG9nLWdyb3VwJztcbmltcG9ydCB7IGNsb3VkZm9ybWF0aW9uIH0gZnJvbSAnLi9sb2dzLmdlbmVyYXRlZCc7XG5pbXBvcnQgeyBJRmlsdGVyUGF0dGVybiB9IGZyb20gJy4vcGF0dGVybic7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBNZXRyaWNGaWx0ZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNZXRyaWNGaWx0ZXJQcm9wcyB7XG4gICAgLyoqXG4gICAgICogVGhlIGxvZyBncm91cCB0byBjcmVhdGUgdGhlIGZpbHRlciBvbi5cbiAgICAgKi9cbiAgICBsb2dHcm91cDogTG9nR3JvdXBSZWY7XG5cbiAgICAvKipcbiAgICAgKiBQYXR0ZXJuIHRvIHNlYXJjaCBmb3IgbG9nIGV2ZW50cy5cbiAgICAgKi9cbiAgICBmaWx0ZXJQYXR0ZXJuOiBJRmlsdGVyUGF0dGVybjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lc3BhY2Ugb2YgdGhlIG1ldHJpYyB0byBlbWl0LlxuICAgICAqL1xuICAgIG1ldHJpY05hbWVzcGFjZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIG1ldHJpYyB0byBlbWl0LlxuICAgICAqL1xuICAgIG1ldHJpY05hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSB2YWx1ZSB0byBlbWl0IGZvciB0aGUgbWV0cmljLlxuICAgICAqXG4gICAgICogQ2FuIGVpdGhlciBiZSBhIGxpdGVyYWwgbnVtYmVyICh0eXBpY2FsbHkgXCIxXCIpLCBvciB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBzdHJ1Y3R1cmVcbiAgICAgKiB0byB0YWtlIHRoZSB2YWx1ZSBmcm9tIHRoZSBtYXRjaGVkIGV2ZW50LiBJZiB5b3UgYXJlIHVzaW5nIGEgZmllbGQgdmFsdWUsIHRoZSBmaWVsZFxuICAgICAqIHZhbHVlIG11c3QgaGF2ZSBiZWVuIG1hdGNoZWQgdXNpbmcgdGhlIHBhdHRlcm4uXG4gICAgICpcbiAgICAgKiBJZiB5b3Ugd2FudCB0byBzcGVjaWZ5IGEgZmllbGQgZnJvbSBhIG1hdGNoZWQgSlNPTiBzdHJ1Y3R1cmUsIHVzZSAnJC5maWVsZE5hbWUnLFxuICAgICAqIGFuZCBtYWtlIHN1cmUgdGhlIGZpZWxkIGlzIGluIHRoZSBwYXR0ZXJuIChpZiBvbmx5IGFzICckLmZpZWxkTmFtZSA9IConKS5cbiAgICAgKlxuICAgICAqIElmIHlvdSB3YW50IHRvIHNwZWNpZnkgYSBmaWVsZCBmcm9tIGEgbWF0Y2hlZCBzcGFjZS1kZWxpbWl0ZWQgc3RydWN0dXJlLFxuICAgICAqIHVzZSAnJGZpZWxkTmFtZScuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBcIjFcIlxuICAgICAqL1xuICAgIG1ldHJpY1ZhbHVlPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHZhbHVlIHRvIGVtaXQgaWYgdGhlIHBhdHRlcm4gZG9lcyBub3QgbWF0Y2ggYSBwYXJ0aWN1bGFyIGV2ZW50LlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgTm8gbWV0cmljIGVtaXR0ZWQuXG4gICAgICovXG4gICAgZGVmYXVsdFZhbHVlPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEEgZmlsdGVyIHRoYXQgZXh0cmFjdHMgaW5mb3JtYXRpb24gZnJvbSBDbG91ZFdhdGNoIExvZ3MgYW5kIGVtaXRzIHRvIENsb3VkV2F0Y2ggTWV0cmljc1xuICovXG5leHBvcnQgY2xhc3MgTWV0cmljRmlsdGVyIGV4dGVuZHMgY2RrLkNvbnN0cnVjdCB7XG4gICAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTWV0cmljRmlsdGVyUHJvcHMpIHtcbiAgICAgICAgc3VwZXIocGFyZW50LCBpZCk7XG5cbiAgICAgICAgLy8gSXQgbG9va3Mgb2RkIHRvIG1hcCB0aGlzIG9iamVjdCB0byBhIHNpbmdsZXRvbiBsaXN0LCBidXQgdGhhdCdzIGhvd1xuICAgICAgICAvLyB3ZSdyZSBzdXBwb3NlZCB0byBkbyBpdCBhY2NvcmRpbmcgdG8gdGhlIGRvY3MuXG4gICAgICAgIC8vXG4gICAgICAgIC8vID4gQ3VycmVudGx5LCB5b3UgY2FuIHNwZWNpZnkgb25seSBvbmUgbWV0cmljIHRyYW5zZm9ybWF0aW9uIGZvclxuICAgICAgICAvLyA+IGVhY2ggbWV0cmljIGZpbHRlci4gSWYgeW91IHdhbnQgdG8gc3BlY2lmeSBtdWx0aXBsZSBtZXRyaWNcbiAgICAgICAgLy8gPiB0cmFuc2Zvcm1hdGlvbnMsIHlvdSBtdXN0IHNwZWNpZnkgbXVsdGlwbGUgbWV0cmljIGZpbHRlcnMuXG4gICAgICAgIC8vXG4gICAgICAgIC8vIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1yZXNvdXJjZS1sb2dzLW1ldHJpY2ZpbHRlci5odG1sXG4gICAgICAgIG5ldyBjbG91ZGZvcm1hdGlvbi5NZXRyaWNGaWx0ZXJSZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICAgICAgICBsb2dHcm91cE5hbWU6IHByb3BzLmxvZ0dyb3VwLmxvZ0dyb3VwTmFtZSxcbiAgICAgICAgICAgIGZpbHRlclBhdHRlcm46IHByb3BzLmZpbHRlclBhdHRlcm4ubG9nUGF0dGVyblN0cmluZyxcbiAgICAgICAgICAgIG1ldHJpY1RyYW5zZm9ybWF0aW9uczogW3tcbiAgICAgICAgICAgICAgICBtZXRyaWNOYW1lc3BhY2U6IHByb3BzLm1ldHJpY05hbWVzcGFjZSxcbiAgICAgICAgICAgICAgICBtZXRyaWNOYW1lOiBwcm9wcy5tZXRyaWNOYW1lLFxuICAgICAgICAgICAgICAgIG1ldHJpY1ZhbHVlOiBwcm9wcy5tZXRyaWNWYWx1ZSAhPT0gdW5kZWZpbmVkID8gcHJvcHMubWV0cmljVmFsdWUgOiAnMScsXG4gICAgICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiBwcm9wcy5kZWZhdWx0VmFsdWVcbiAgICAgICAgICAgIH1dXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==

@@ -159,3 +159,3 @@ /**

static construct(columns: string[]): SpaceDelimitedTextPattern;
private constructor();
protected constructor(columns: string[], restrictions: RestrictionMap);
/**

@@ -162,0 +162,0 @@ * Restrict where the pattern applies

@@ -250,2 +250,4 @@ "use strict";

class SpaceDelimitedTextPattern {
// TODO: Temporarily changed from private to protected to unblock build. We need to think
// about how to handle jsii types with private constructors.
constructor(columns, restrictions) {

@@ -403,2 +405,2 @@ this.columns = columns;

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0dGVybi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInBhdHRlcm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG9DQUFvQzs7QUFTcEM7O0dBRUc7QUFDSCxNQUFzQixXQUFXO0lBQzdCLHlFQUF5RTtJQUN6RSxtRUFBbUU7SUFDbkUsWUFBNEIsaUJBQXlCO1FBQXpCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBUTtJQUNyRCxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDdkIsT0FBTyxJQUFJLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztJQUNoRCxDQUFDO0NBQ0o7QUFURCxrQ0FTQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxhQUFhO0lBRXRCOzs7Ozs7O09BT0c7SUFDSSxNQUFNLENBQUMsT0FBTyxDQUFDLGdCQUF3QjtRQUMxQyxPQUFPLElBQUksaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsU0FBUztRQUNuQixPQUFPLElBQUksaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBZTtRQUNyQyxPQUFPLElBQUksY0FBYyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxLQUFlO1FBQ3BDLE9BQU8sSUFBSSxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsVUFBc0I7UUFDaEQsT0FBTyxJQUFJLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMx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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0dGVybi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInBhdHRlcm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG9DQUFvQzs7QUFTcEM7O0dBRUc7QUFDSCxNQUFzQixXQUFXO0lBQzdCLHlFQUF5RTtJQUN6RSxtRUFBbUU7SUFDbkUsWUFBNEIsaUJBQXlCO1FBQXpCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBUTtJQUNyRCxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDdkIsT0FBTyxJQUFJLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztJQUNoRCxDQUFDO0NBQ0o7QUFURCxrQ0FTQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxhQUFhO0lBRXRCOzs7Ozs7O09BT0c7SUFDSSxNQUFNLENBQUMsT0FBTyxDQUFDLGdCQUF3QjtRQUMxQyxPQUFPLElBQUksaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsU0FBUztRQUNuQixPQUFPLElBQUksaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBZTtRQUNyQyxPQUFPLElBQUksY0FBYyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxLQUFlO1FBQ3BDLE9BQU8sSUFBSSxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsVUFBc0I7UUFDaEQsT0FBTyxJQUFJLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7O09BaUJHO0lBQ0ksTUFBTSxDQUFDLFdBQVcsQ0FBQyxTQUFpQixFQUFFLFVBQWtCLEVBQUUsS0FBYTtRQUMxRSxPQUFPLElBQUksaUJBQWlCLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7O09BaUJHO0lBQ0ksTUFBTSxDQUFDLFdBQVcsQ0FBQyxTQUFpQixFQUFFLFVBQWtCLEVBQUUsS0FBYTtRQUMxRSxPQUFPLElBQUksaUJBQWlCLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBaUI7UUFDbEMsT0FBTyxJQUFJLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxTQUFTLENBQUMsU0FBaUI7UUFDckMsT0FBTyxJQUFJLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFpQjtRQUNsQyxPQUFPLElBQUksaUJBQWlCLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQWlCLEVBQUUsS0FBYztRQUN4RCxPQUFPLElBQUksa0JBQWtCLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBdUI7UUFDeEMsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsMkVBQTJFLENBQUMsQ0FBQztTQUFFO1FBQzVILElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFBRSxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUFFO1FBQ2xELE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQXVCO1FBQ3hDLElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7U0FBRTtRQUNuRixJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQUUsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FBRTtRQUNsRCxPQUFPLElBQUksb0JBQW9CLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7Ozs7Ozs7Ozs7O09BWUc7SUFDSSxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsT0FBaUI7UUFDN0MsT0FBTyx5QkFBeUIsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEQsQ0FBQztDQUNKO0FBdktELHNDQXVLQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxpQkFBaUI7SUFDbkIsWUFBNEIsZ0JBQXdCO1FBQXhCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBUTtJQUNwRCxDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQUNILE1BQU0sY0FBYztJQUdoQixZQUFZLE9BQW1CO1FBQzNCLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksYUFBYSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUM1QzthQUFNO1lBQ0gsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3pFO0lBQ0wsQ0FBQztDQUNKO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLGlCQUFrQixTQUFRLFdBQVc7SUFDdkMsWUFBbUIsU0FBaUIsRUFBRSxVQUFrQixFQUFFLEtBQWE7UUFDbkUsVUFBVSxHQUFHLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hELEtBQUssQ0FBQyxHQUFHLFNBQVMsSUFBSSxVQUFVLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM1RCxDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQUNILE1BQU0saUJBQWtCLFNBQVEsV0FBVztJQUN2QyxZQUFtQixTQUFpQixFQUFFLFVBQWtCLEVBQUUsS0FBYTtRQUNuRSxVQUFVLEdBQUcseUJBQXlCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkQsS0FBSyxDQUFDLEdBQUcsU0FBUyxJQUFJLFVBQVUsSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7Q0FDSjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxrQkFBbUIsU0FBUSxXQUFXO0lBQ3hDLFlBQW1CLFNBQWlCLEVBQUUsT0FBZTtRQUNqRCw0RUFBNEU7UUFDNUUsS0FBSyxDQUFDLEdBQUcsU0FBUyxJQUFJLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDckMsQ0FBQztDQUNKO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLG9CQUFxQixTQUFRLFdBQVc7SUFDMUMsWUFBbUIsUUFBZ0IsRUFBRSxRQUF1QjtRQUN4RCxJQUFJLFFBQVEsS0FBSyxJQUFJLElBQUksUUFBUSxLQUFLLElBQUksRUFBRTtZQUN4QyxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7U0FDdkQ7UUFFRCxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUVuRSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN6QyxDQUFDO0NBQ0o7QUFJRCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUM7QUFFM0I7O0dBRUc7QUFDSCxNQUFhLHlCQUF5QjtJQTBCbEMseUZBQXlGO0lBQ3pGLGtFQUFrRTtJQUNsRSxZQUF1QyxPQUFpQixFQUFtQixZQUE0QjtRQUFoRSxZQUFPLEdBQVAsT0FBTyxDQUFVO1FBQW1CLGlCQUFZLEdBQVosWUFBWSxDQUFnQjtRQUNuRywwRUFBMEU7SUFDOUUsQ0FBQztJQTdCRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBaUI7UUFDckMsd0ZBQXdGO1FBQ3hGLDRCQUE0QjtRQUM1QixLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtZQUMxQixJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixNQUFNLEVBQUUsQ0FBQyxDQUFDO2FBQ3JEO1NBQ0o7UUFFRCxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUN2RCxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7U0FDdkQ7UUFFRCxPQUFPLElBQUkseUJBQXlCLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFRRDs7T0FFRztJQUNJLFdBQVcsQ0FBQyxVQUFrQixFQUFFLFVBQWtCLEVBQUUsS0FBYTtRQUNwRSxJQUFJLFVBQVUsS0FBSyxZQUFZLEVBQUU7WUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1NBQ3ZEO1FBQ0QsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN6QyxNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxVQUFVLEVBQUUsQ0FBQyxDQUFDO1NBQ25GO1FBRUQsVUFBVSxHQUFHLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRWhELE9BQU8sSUFBSSx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFO1lBQy9FLFVBQVU7WUFDVixXQUFXLEVBQUUsS0FBSztTQUNyQixDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVcsQ0FBQyxVQUFrQixFQUFFLFVBQWtCLEVBQUUsS0FBYTtRQUNwRSxJQUFJLFVBQVUsS0FBSyxZQUFZLEVBQUU7WUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1NBQ3ZEO1FBQ0QsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN6QyxNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxVQUFVLEVBQUUsQ0FBQyxDQUFDO1NBQ25GO1FBRUQsVUFBVSxHQUFHLHlCQUF5QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRW5ELE9BQU8sSUFBSSx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFO1lBQy9FLFVBQVU7WUFDVixXQUFXLEVBQUUsS0FBSztTQUNyQixDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCxJQUFXLGdCQUFnQjtRQUN2QixPQUFPLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUNyRixDQUFDO0lBRUQ7O09BRUc7SUFDSyxnQkFBZ0IsQ0FBQyxNQUFjO1FBQ25DLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUFFLE9BQU8sTUFBTSxDQUFDO1NBQUU7UUFFckMsT0FBTyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRDs7T0FFRztJQUNLLGNBQWMsQ0FBQyxVQUFrQixFQUFFLFdBQThCO1FBQ3JFLE1BQU0sR0FBRyxHQUFtQixFQUFFLENBQUM7UUFDL0IsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM5QyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUM3QztRQUNELElBQUksQ0FBQyxDQUFDLFVBQVUsSUFBSSxHQUFHLENBQUMsRUFBRTtZQUFFLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUM7U0FBRTtRQUNuRCxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQztDQUNKO0FBaEdELDhEQWdHQztBQXVCRDs7Ozs7OztHQU9HO0FBQ0gsU0FBUyxTQUFTLENBQUMsSUFBWTtJQUMzQixPQUFPLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxHQUFHLEdBQUcsQ0FBQztBQUN4RSxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLGVBQWUsQ0FBQyxNQUFjO0lBQ25DLE9BQU8sTUFBTSxLQUFLLFlBQVksSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDdEUsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFTLHNCQUFzQixDQUFDLFFBQWdCO0lBQzVDLElBQUksUUFBUSxLQUFLLElBQUksRUFBRTtRQUFFLFFBQVEsR0FBRyxHQUFHLENBQUM7S0FBRTtJQUUxQyxJQUFJLFFBQVEsS0FBSyxHQUFHLElBQUksUUFBUSxLQUFLLElBQUksRUFBRTtRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxRQUFRLGdDQUFnQyxDQUFDLENBQUM7S0FDOUY7SUFFRCxPQUFPLFFBQVEsQ0FBQztBQUNwQixDQUFDO0FBRUQsTUFBTSxlQUFlLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBRTFEOzs7O0dBSUc7QUFDSCxTQUFTLHlCQUF5QixDQUFDLFFBQWdCO0lBQy9DLCtDQUErQztJQUMvQyxJQUFJLFFBQVEsS0FBSyxJQUFJLEVBQUU7UUFBRSxRQUFRLEdBQUcsR0FBRyxDQUFDO0tBQUU7SUFFMUMsSUFBSSxlQUFlLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO1FBQzFDLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLFFBQVEsc0JBQXNCLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBQ2hIO0lBRUQsT0FBTyxRQUFRLENBQUM7QUFDcEIsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBUyxpQkFBaUIsQ0FBQyxNQUFjLEVBQUUsV0FBOEI7SUFDckUsSUFBSSxXQUFXLENBQUMsV0FBVyxLQUFLLFNBQVMsRUFBRTtRQUN2QyxPQUFPLEdBQUcsTUFBTSxJQUFJLFdBQVcsQ0FBQyxVQUFVLElBQUksV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO0tBQzNFO1NBQU0sSUFBSSxXQUFXLENBQUMsV0FBVyxFQUFFO1FBQ2hDLE9BQU8sR0FBRyxNQUFNLElBQUksV0FBVyxDQUFDLFVBQVUsSUFBSSxTQUFTLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7S0FDdEY7U0FBTTtRQUNILE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztLQUMxQztBQUNMLENBQUM7QUFFRCxTQUFTLEdBQUcsQ0FBQyxFQUFZO0lBQ3JCLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDekMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEltcGxlbWVudGF0aW9uIG9mIG1ldHJpYyBwYXR0ZXJuc1xuXG4vKipcbiAqIEludGVyZmFjZSBmb3Igb2JqZWN0cyB0aGF0IGNhbiByZW5kZXIgdGhlbXNlbHZlcyB0byBsb2cgcGF0dGVybnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUZpbHRlclBhdHRlcm4ge1xuICAgIHJlYWRvbmx5IGxvZ1BhdHRlcm5TdHJpbmc6IHN0cmluZztcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBwYXR0ZXJucyB0aGF0IG9ubHkgbWF0Y2ggSlNPTiBsb2cgZXZlbnRzLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgSlNPTlBhdHRlcm4gaW1wbGVtZW50cyBJRmlsdGVyUGF0dGVybiB7XG4gICAgLy8gVGhpcyBpcyBhIHNlcGFyYXRlIGNsYXNzIHNvIHdlIGhhdmUgc29tZSB0eXBlIHNhZmV0eSB3aGVyZSB1c2VycyBjYW4ndFxuICAgIC8vIGNvbWJpbmUgdGV4dCBwYXR0ZXJucyBhbmQgSlNPTiBwYXR0ZXJucyB3aXRoIGFuICdhbmQnIG9wZXJhdGlvbi5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkganNvblBhdHRlcm5TdHJpbmc6IHN0cmluZykge1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbG9nUGF0dGVyblN0cmluZygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gJ3sgJyArIHRoaXMuanNvblBhdHRlcm5TdHJpbmcgKyAnIH0nO1xuICAgIH1cbn1cblxuLyoqXG4gKiBBIGNvbGxlY3Rpb24gb2Ygc3RhdGljIG1ldGhvZHMgdG8gZ2VuZXJhdGUgYXBwcm9wcmlhdGUgSUxvZ1BhdHRlcm5zXG4gKi9cbmV4cG9ydCBjbGFzcyBGaWx0ZXJQYXR0ZXJuIHtcblxuICAgIC8qKlxuICAgICAqIFVzZSB0aGUgZ2l2ZW4gc3RyaW5nIGFzIGxvZyBwYXR0ZXJuLlxuICAgICAqXG4gICAgICogU2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BbWF6b25DbG91ZFdhdGNoL2xhdGVzdC9sb2dzL0ZpbHRlckFuZFBhdHRlcm5TeW50YXguaHRtbFxuICAgICAqIGZvciBpbmZvcm1hdGlvbiBvbiB3cml0aW5nIGxvZyBwYXR0ZXJucy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBsb2dQYXR0ZXJuU3RyaW5nIFRoZSBwYXR0ZXJuIHN0cmluZyB0byB1c2UuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBsaXRlcmFsKGxvZ1BhdHRlcm5TdHJpbmc6IHN0cmluZyk6IElGaWx0ZXJQYXR0ZXJuIHtcbiAgICAgICAgcmV0dXJuIG5ldyBMaXRlcmFsTG9nUGF0dGVybihsb2dQYXR0ZXJuU3RyaW5nKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIGxvZyBwYXR0ZXJuIHRoYXQgbWF0Y2hlcyBhbGwgZXZlbnRzLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgYWxsRXZlbnRzKCk6IElGaWx0ZXJQYXR0ZXJuIHtcbiAgICAgICAgcmV0dXJuIG5ldyBMaXRlcmFsTG9nUGF0dGVybihcIlwiKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIGxvZyBwYXR0ZXJuIHRoYXQgbWF0Y2hlcyBpZiBhbGwgdGhlIHN0cmluZ3MgZ2l2ZW4gYXBwZWFyIGluIHRoZSBldmVudC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB0ZXJtcyBUaGUgd29yZHMgdG8gc2VhcmNoIGZvci4gQWxsIHRlcm1zIG11c3QgbWF0Y2guXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBhbGxUZXJtcyguLi50ZXJtczogc3RyaW5nW10pOiBJRmlsdGVyUGF0dGVybiB7XG4gICAgICAgIHJldHVybiBuZXcgVGV4dExvZ1BhdHRlcm4oW3Rlcm1zXSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQSBsb2cgcGF0dGVybiB0aGF0IG1hdGNoZXMgaWYgYW55IG9mIHRoZSBzdHJpbmdzIGdpdmVuIGFwcGVhciBpbiB0aGUgZXZlbnQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdGVybXMgVGhlIHdvcmRzIHRvIHNlYXJjaCBmb3IuIEFueSB0ZXJtcyBtdXN0IG1hdGNoLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgYW55VGVybSguLi50ZXJtczogc3RyaW5nW10pOiBJRmlsdGVyUGF0dGVybiB7XG4gICAgICAgIHJldHVybiBuZXcgVGV4dExvZ1BhdHRlcm4odGVybXMubWFwKHQgPT4gW3RdKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQSBsb2cgcGF0dGVybiB0aGF0IG1hdGNoZXMgaWYgYW55IG9mIHRoZSBnaXZlbiB0ZXJtIGdyb3VwcyBtYXRjaGVzIHRoZSBldmVudC5cbiAgICAgKlxuICAgICAqIEEgdGVybSBncm91cCBtYXRjaGVzIGFuIGV2ZW50IGlmIGFsbCB0aGUgdGVybXMgaW4gaXQgYXBwZWFyIGluIHRoZSBldmVudCBzdHJpbmcuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdGVybUdyb3VwcyBBIGxpc3Qgb2YgdGVybSBncm91cHMgdG8gc2VhcmNoIGZvci4gQW55IG9uZSBvZiB0aGUgY2xhdXNlcyBtdXN0IG1hdGNoLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgYW55VGVybUdyb3VwKC4uLnRlcm1Hcm91cHM6IHN0cmluZ1tdW10pOiBJRmlsdGVyUGF0dGVybiB7XG4gICAgICAgIHJldHVybiBuZXcgVGV4dExvZ1BhdHRlcm4odGVybUdyb3Vwcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQSBKU09OIGxvZyBwYXR0ZXJuIHRoYXQgY29tcGFyZXMgc3RyaW5nIHZhbHVlcy5cbiAgICAgKlxuICAgICAqIFRoaXMgcGF0dGVybiBvbmx5IG1hdGNoZXMgaWYgdGhlIGV2ZW50IGlzIGEgSlNPTiBldmVudCwgYW5kIHRoZSBpbmRpY2F0ZWQgZmllbGQgaW5zaWRlXG4gICAgICogY29tcGFyZXMgd2l0aCB0aGUgc3RyaW5nIHZhbHVlLlxuICAgICAqXG4gICAgICogVXNlICckJyB0byBpbmRpY2F0ZSB0aGUgcm9vdCBvZiB0aGUgSlNPTiBzdHJ1Y3R1cmUuIFRoZSBjb21wYXJpc29uIG9wZXJhdG9yIGNhbiBvbmx5XG4gICAgICogY29tcGFyZSBlcXVhbGl0eSBvciBpbmVxdWFsaXR5LiBUaGUgJyonIHdpbGRjYXJkIG1heSBhcHBlYXIgaW4gdGhlIHZhbHVlIG1heSBhdCB0aGVcbiAgICAgKiBzdGFydCBvciBhdCB0aGUgZW5kLlxuICAgICAqXG4gICAgICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZTpcbiAgICAgKlxuICAgICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BbWF6b25DbG91ZFdhdGNoL2xhdGVzdC9sb2dzL0ZpbHRlckFuZFBhdHRlcm5TeW50YXguaHRtbFxuICAgICAqXG4gICAgICogQHBhcmFtIGpzb25GaWVsZCBGaWVsZCBpbnNpZGUgSlNPTi4gRXhhbXBsZTogXCIkLm15RmllbGRcIlxuICAgICAqIEBwYXJhbSBjb21wYXJpc29uIENvbXBhcmlzb24gdG8gY2Fycnkgb3V0LiBFaXRoZXIgPSBvciAhPS5cbiAgICAgKiBAcGFyYW0gdmFsdWUgVGhlIHN0cmluZyB2YWx1ZSB0byBjb21wYXJlIHRvLiBNYXkgdXNlICcqJyBhcyB3aWxkY2FyZCBhdCBzdGFydCBvciBlbmQgb2Ygc3RyaW5nLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgc3RyaW5nVmFsdWUoanNvbkZpZWxkOiBzdHJpbmcsIGNvbXBhcmlzb246IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IEpTT05QYXR0ZXJuIHtcbiAgICAgICAgcmV0dXJuIG5ldyBKU09OU3RyaW5nUGF0dGVybihqc29uRmllbGQsIGNvbXBhcmlzb24sIHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIEpTT04gbG9nIHBhdHRlcm4gdGhhdCBjb21wYXJlcyBudW1lcmljYWwgdmFsdWVzLlxuICAgICAqXG4gICAgICogVGhpcyBwYXR0ZXJuIG9ubHkgbWF0Y2hlcyBpZiB0aGUgZXZlbnQgaXMgYSBKU09OIGV2ZW50LCBhbmQgdGhlIGluZGljYXRlZCBmaWVsZCBpbnNpZGVcbiAgICAgKiBjb21wYXJlcyB3aXRoIHRoZSB2YWx1ZSBpbiB0aGUgaW5kaWNhdGVkIHdheS5cbiAgICAgKlxuICAgICAqIFVzZSAnJCcgdG8gaW5kaWNhdGUgdGhlIHJvb3Qgb2YgdGhlIEpTT04gc3RydWN0dXJlLiBUaGUgY29tcGFyaXNvbiBvcGVyYXRvciBjYW4gb25seVxuICAgICAqIGNvbXBhcmUgZXF1YWxpdHkgb3IgaW5lcXVhbGl0eS4gVGhlICcqJyB3aWxkY2FyZCBtYXkgYXBwZWFyIGluIHRoZSB2YWx1ZSBtYXkgYXQgdGhlXG4gICAgICogc3RhcnQgb3IgYXQgdGhlIGVuZC5cbiAgICAgKlxuICAgICAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWU6XG4gICAgICpcbiAgICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRXYXRjaC9sYXRlc3QvbG9ncy9GaWx0ZXJBbmRQYXR0ZXJuU3ludGF4Lmh0bWxcbiAgICAgKlxuICAgICAqIEBwYXJhbSBqc29uRmllbGQgRmllbGQgaW5zaWRlIEpTT04uIEV4YW1wbGU6IFwiJC5teUZpZWxkXCJcbiAgICAgKiBAcGFyYW0gY29tcGFyaXNvbiBDb21wYXJpc29uIHRvIGNhcnJ5IG91dC4gT25lIG9mID0sICE9LCA8LCA8PSwgPiwgPj0uXG4gICAgICogQHBhcmFtIHZhbHVlIFRoZSBudW1lcmljYWwgdmFsdWUgdG8gY29tcGFyZSB0b1xuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgbnVtYmVyVmFsdWUoanNvbkZpZWxkOiBzdHJpbmcsIGNvbXBhcmlzb246IHN0cmluZywgdmFsdWU6IG51bWJlcik6IEpTT05QYXR0ZXJuIHtcbiAgICAgICAgcmV0dXJuIG5ldyBKU09OTnVtYmVyUGF0dGVybihqc29uRmllbGQsIGNvbXBhcmlzb24sIHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIEpTT04gbG9nIHBhdHRlcm4gdGhhdCBtYXRjaGVzIGlmIHRoZSBmaWVsZCBleGlzdHMgYW5kIGhhcyB0aGUgc3BlY2lhbCB2YWx1ZSAnbnVsbCcuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ganNvbkZpZWxkIEZpZWxkIGluc2lkZSBKU09OLiBFeGFtcGxlOiBcIiQubXlGaWVsZFwiXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpc051bGwoanNvbkZpZWxkOiBzdHJpbmcpOiBKU09OUGF0dGVybiB7XG4gICAgICAgIHJldHVybiBuZXcgSlNPTlBvc3RmaXhQYXR0ZXJuKGpzb25GaWVsZCwgJ0lTIE5VTEwnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIEpTT04gbG9nIHBhdHRlcm4gdGhhdCBtYXRjaGVzIGlmIHRoZSBmaWVsZCBkb2VzIG5vdCBleGlzdC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBqc29uRmllbGQgRmllbGQgaW5zaWRlIEpTT04uIEV4YW1wbGU6IFwiJC5teUZpZWxkXCJcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIG5vdEV4aXN0cyhqc29uRmllbGQ6IHN0cmluZyk6IEpTT05QYXR0ZXJuIHtcbiAgICAgICAgcmV0dXJuIG5ldyBKU09OUG9zdGZpeFBhdHRlcm4oanNvbkZpZWxkLCAnTk9UIEVYSVNUUycpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEEgSlNPTiBsb2cgcGF0dGVyIHRoYXQgbWF0Y2hlcyBpZiB0aGUgZmllbGQgZXhpc3RzLlxuICAgICAqXG4gICAgICogVGhpcyBpcyBhIHJlYWRhYmxlIGNvbnZlbmllbmNlIHdyYXBwZXIgb3ZlciAnZmllbGQgPSAqJ1xuICAgICAqXG4gICAgICogQHBhcmFtIGpzb25GaWVsZCBGaWVsZCBpbnNpZGUgSlNPTi4gRXhhbXBsZTogXCIkLm15RmllbGRcIlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZXhpc3RzKGpzb25GaWVsZDogc3RyaW5nKTogSlNPTlBhdHRlcm4ge1xuICAgICAgICByZXR1cm4gbmV3IEpTT05TdHJpbmdQYXR0ZXJuKGpzb25GaWVsZCwgJz0nLCAnKicpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEEgSlNPTiBsb2cgcGF0dGVybiB0aGF0IG1hdGNoZXMgaWYgdGhlIGZpZWxkIGV4aXN0cyBhbmQgZXF1YWxzIHRoZSBib29sZWFuIHZhbHVlLlxuICAgICAqXG4gICAgICogQHBhcmFtIGpzb25GaWVsZCBGaWVsZCBpbnNpZGUgSlNPTi4gRXhhbXBsZTogXCIkLm15RmllbGRcIlxuICAgICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gbWF0Y2hcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGJvb2xlYW5WYWx1ZShqc29uRmllbGQ6IHN0cmluZywgdmFsdWU6IGJvb2xlYW4pOiBKU09OUGF0dGVybiB7XG4gICAgICAgIHJldHVybiBuZXcgSlNPTlBvc3RmaXhQYXR0ZXJuKGpzb25GaWVsZCwgdmFsdWUgPyAnSVMgVFJVRScgOiAnSVMgRkFMU0UnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIEpTT04gbG9nIHBhdHRlcm4gdGhhdCBtYXRjaGVzIGlmIGFsbCBnaXZlbiBKU09OIGxvZyBwYXR0ZXJucyBtYXRjaFxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgYWxsKC4uLnBhdHRlcm5zOiBKU09OUGF0dGVybltdKTogSlNPTlBhdHRlcm4ge1xuICAgICAgICBpZiAocGF0dGVybnMubGVuZ3RoID09PSAwKSB7IHRocm93IG5ldyBFcnJvcignTXVzdCBzdXBwbHkgYXQgbGVhc3Qgb25lIHBhdHRlcm4sIG9yIHVzZSBhbGxFdmVudHMoKSB0byBtYXRjaCBhbGwgZXZlbnRzLicpOyB9XG4gICAgICAgIGlmIChwYXR0ZXJucy5sZW5ndGggPT09IDEpIHsgcmV0dXJuIHBhdHRlcm5zWzBdOyB9XG4gICAgICAgIHJldHVybiBuZXcgSlNPTkFnZ3JlZ2F0ZVBhdHRlcm4oJyYmJywgcGF0dGVybnMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEEgSlNPTiBsb2cgcGF0dGVybiB0aGF0IG1hdGNoZXMgaWYgYW55IG9mIHRoZSBnaXZlbiBKU09OIGxvZyBwYXR0ZXJucyBtYXRjaFxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgYW55KC4uLnBhdHRlcm5zOiBKU09OUGF0dGVybltdKTogSlNPTlBhdHRlcm4ge1xuICAgICAgICBpZiAocGF0dGVybnMubGVuZ3RoID09PSAwKSB7IHRocm93IG5ldyBFcnJvcignTXVzdCBzdXBwbHkgYXQgbGVhc3Qgb25lIHBhdHRlcm4nKTsgfVxuICAgICAgICBpZiAocGF0dGVybnMubGVuZ3RoID09PSAxKSB7IHJldHVybiBwYXR0ZXJuc1swXTsgfVxuICAgICAgICByZXR1cm4gbmV3IEpTT05BZ2dyZWdhdGVQYXR0ZXJuKCd8fCcsIHBhdHRlcm5zKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIHNwYWNlIGRlbGltaXRlZCBsb2cgcGF0dGVybiBtYXRjaGVyLlxuICAgICAqXG4gICAgICogVGhlIGxvZyBldmVudCBpcyBkaXZpZGVkIGludG8gc3BhY2UtZGVsaW1pdGVkIGNvbHVtbnMgKG9wdGlvbmFsbHlcbiAgICAgKiBlbmNsb3NlZCBieSBcIlwiIG9yIFtdIHRvIGNhcHR1cmUgc3BhY2VzIGludG8gY29sdW1uIHZhbHVlcyksIGFuZCBuYW1lc1xuICAgICAqIGFyZSBnaXZlbiB0byBlYWNoIGNvbHVtbi5cbiAgICAgKlxuICAgICAqICcuLi4nIG1heSBiZSBzcGVjaWZpZWQgb25jZSB0byBtYXRjaCBhbnkgbnVtYmVyIG9mIGNvbHVtbnMuXG4gICAgICpcbiAgICAgKiBBZnRlcndhcmRzLCBjb25kaXRpb25zIG1heSBiZSBhZGRlZCB0byBpbmRpdmlkdWFsIGNvbHVtbnMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY29sdW1ucyBUaGUgY29sdW1ucyBpbiB0aGUgc3BhY2UtZGVsaW1pdGVkIGxvZyBzdHJlYW0uXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBzcGFjZURlbGltaXRlZCguLi5jb2x1bW5zOiBzdHJpbmdbXSk6IFNwYWNlRGVsaW1pdGVkVGV4dFBhdHRlcm4ge1xuICAgICAgICByZXR1cm4gU3BhY2VEZWxpbWl0ZWRUZXh0UGF0dGVybi5jb25zdHJ1Y3QoY29sdW1ucyk7XG4gICAgfVxufVxuXG4vKipcbiAqIFVzZSBhIHN0cmluZyBsaXRlcmFsIGFzIGEgbG9nIHBhdHRlcm5cbiAqL1xuY2xhc3MgTGl0ZXJhbExvZ1BhdHRlcm4gaW1wbGVtZW50cyBJRmlsdGVyUGF0dGVybiB7XG4gICAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGxvZ1BhdHRlcm5TdHJpbmc6IHN0cmluZykge1xuICAgIH1cbn1cblxuLyoqXG4gKiBTZWFyY2ggZm9yIGEgc2V0IG9mIHNldCBvZiB0ZXJtc1xuICovXG5jbGFzcyBUZXh0TG9nUGF0dGVybiBpbXBsZW1lbnRzIElGaWx0ZXJQYXR0ZXJuIHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgbG9nUGF0dGVyblN0cmluZzogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoY2xhdXNlczogc3RyaW5nW11bXSkge1xuICAgICAgICBjb25zdCBxdW90ZWRDbGF1c2VzID0gY2xhdXNlcy5tYXAodGVybXMgPT4gdGVybXMubWFwKHF1b3RlVGVybSkuam9pbignICcpKTtcbiAgICAgICAgaWYgKHF1b3RlZENsYXVzZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICB0aGlzLmxvZ1BhdHRlcm5TdHJpbmcgPSBxdW90ZWRDbGF1c2VzWzBdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5sb2dQYXR0ZXJuU3RyaW5nID0gcXVvdGVkQ2xhdXNlcy5tYXAoYWx0ID0+ICc/JyArIGFsdCkuam9pbignICcpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIEEgc3RyaW5nIGNvbXBhcmlzb24gZm9yIEpTT04gdmFsdWVzXG4gKi9cbmNsYXNzIEpTT05TdHJpbmdQYXR0ZXJuIGV4dGVuZHMgSlNPTlBhdHRlcm4ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihqc29uRmllbGQ6IHN0cmluZywgY29tcGFyaXNvbjogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbXBhcmlzb24gPSB2YWxpZGF0ZVN0cmluZ09wZXJhdG9yKGNvbXBhcmlzb24pO1xuICAgICAgICBzdXBlcihgJHtqc29uRmllbGR9ICR7Y29tcGFyaXNvbn0gJHtxdW90ZVRlcm0odmFsdWUpfWApO1xuICAgIH1cbn1cblxuLyoqXG4gKiBBIG51bWJlciBjb21wYXJpc29uIGZvciBKU09OIHZhbHVlc1xuICovXG5jbGFzcyBKU09OTnVtYmVyUGF0dGVybiBleHRlbmRzIEpTT05QYXR0ZXJuIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoanNvbkZpZWxkOiBzdHJpbmcsIGNvbXBhcmlzb246IHN0cmluZywgdmFsdWU6IG51bWJlcikge1xuICAgICAgICBjb21wYXJpc29uID0gdmFsaWRhdGVOdW1lcmljYWxPcGVyYXRvcihjb21wYXJpc29uKTtcbiAgICAgICAgc3VwZXIoYCR7anNvbkZpZWxkfSAke2NvbXBhcmlzb259ICR7dmFsdWV9YCk7XG4gICAgfVxufVxuXG4vKipcbiAqIEEgcG9zdGZpeCBvcGVyYXRvciBmb3IgSlNPTiBwYXR0ZXJuc1xuICovXG5jbGFzcyBKU09OUG9zdGZpeFBhdHRlcm4gZXh0ZW5kcyBKU09OUGF0dGVybiB7XG4gICAgcHVibGljIGNvbnN0cnVjdG9yKGpzb25GaWVsZDogc3RyaW5nLCBwb3N0Zml4OiBzdHJpbmcpIHtcbiAgICAgICAgLy8gTm8gdmFsaWRhdGlvbiwgd2UgYXNzdW1lIHRoZXNlIGFyZSBnZW5lcmF0ZWQgYnkgdHJ1c3RlZCBmYWN0b3J5IGZ1bmN0aW9uc1xuICAgICAgICBzdXBlcihgJHtqc29uRmllbGR9ICR7cG9zdGZpeH1gKTtcbiAgICB9XG59XG5cbi8qKlxuICogQ29tYmluZXMgbXVsdGlwbGUgb3RoZXIgSlNPTiBwYXR0ZXJucyB3aXRoIGFuIG9wZXJhdG9yXG4gKi9cbmNsYXNzIEpTT05BZ2dyZWdhdGVQYXR0ZXJuIGV4dGVuZHMgSlNPTlBhdHRlcm4ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihvcGVyYXRvcjogc3RyaW5nLCBwYXR0ZXJuczogSlNPTlBhdHRlcm5bXSkge1xuICAgICAgICBpZiAob3BlcmF0b3IgIT09ICcmJicgJiYgb3BlcmF0b3IgIT09ICd8fCcpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignT3BlcmF0b3IgbXVzdCBiZSBvbmUgb2YgJiYgb3IgfHwnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNsYXVzZXMgPSBwYXR0ZXJucy5tYXAocCA9PiAnKCcgKyBwLmpzb25QYXR0ZXJuU3RyaW5nICsgJyknKTtcblxuICAgICAgICBzdXBlcihjbGF1c2VzLmpvaW4oYCAke29wZXJhdG9yfSBgKSk7XG4gICAgfVxufVxuXG5leHBvcnQgdHlwZSBSZXN0cmljdGlvbk1hcCA9IHtbY29sdW1uOiBzdHJpbmddOiBDb2x1bW5SZXN0cmljdGlvbltdfTtcblxuY29uc3QgQ09MX0VMTElQU0lTID0gJy4uLic7XG5cbi8qKlxuICogU3BhY2UgZGVsaW1pdGVkIHRleHQgcGF0dGVyblxuICovXG5leHBvcnQgY2xhc3MgU3BhY2VEZWxpbWl0ZWRUZXh0UGF0dGVybiBpbXBsZW1lbnRzIElGaWx0ZXJQYXR0ZXJuIHtcbiAgICAvKipcbiAgICAgKiBDb25zdHJ1Y3QgYSBuZXcgaW5zdGFuY2Ugb2YgYSBzcGFjZSBkZWxpbWl0ZWQgdGV4dCBwYXR0ZXJuXG4gICAgICpcbiAgICAgKiBTaW5jZSB0aGlzIGNsYXNzIG11c3QgYmUgcHVibGljLCB3ZSBjYW4ndCByZWx5IG9uIHRoZSB1c2VyIG9ubHkgY3JlYXRpbmcgaXQgdGhyb3VnaFxuICAgICAqIHRoZSBgTG9nUGF0dGVybi5zcGFjZURlbGltaXRlZCgpYCBmYWN0b3J5IGZ1bmN0aW9uLiBXZSBtdXN0IHRoZXJlZm9yZSB2YWxpZGF0ZSB0aGVcbiAgICAgKiBhcmd1bWVudCBpbiB0aGUgY29uc3RydWN0b3IuIFNpbmNlIHdlJ3JlIHJldHVybmluZyBhIGNvcHkgb24gZXZlcnkgbXV0YXRpb24sIGFuZCB3ZVxuICAgICAqIGRvbid0IHdhbnQgdG8gcmUtdmFsaWRhdGUgdGhlIHNhbWUgdGhpbmdzIG9uIGV2ZXJ5IGNvbnN0cnVjdGlvbiwgd2UgcHJvdmlkZSBhIGxpbWl0ZWRcbiAgICAgKiBzZXQgb2YgbXV0YXRvciBmdW5jdGlvbnMgYW5kIG9ubHkgdmFsaWRhdGUgdGhlIG5ldyBkYXRhIGV2ZXJ5IHRpbWUuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBjb25zdHJ1Y3QoY29sdW1uczogc3RyaW5nW10pIHtcbiAgICAgICAgLy8gVmFsaWRhdGlvbiBoYXBwZW5zIGhlcmUgYmVjYXVzZSBhIHVzZXIgY291bGQgaW5zdGFudGlhdGUgdGhpcyBvYmplY3QgZGlyZWN0bHkgd2l0aG91dFxuICAgICAgICAvLyBnb2luZyB0aHJvdWdoIHRoZSBmYWN0b3J5XG4gICAgICAgIGZvciAoY29uc3QgY29sdW1uIG9mIGNvbHVtbnMpIHtcbiAgICAgICAgICAgIGlmICghdmFsaWRDb2x1bW5OYW1lKGNvbHVtbikpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY29sdW1uIG5hbWU6ICR7Y29sdW1ufWApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHN1bShjb2x1bW5zLm1hcChjID0+IGMgPT09IENPTF9FTExJUFNJUyA/IDEgOiAwKSkgPiAxKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW4gdXNlIGF0IG1vc3Qgb25lICcuLi4nIGNvbHVtblwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXcgU3BhY2VEZWxpbWl0ZWRUZXh0UGF0dGVybihjb2x1bW5zLCB7fSk7XG4gICAgfVxuXG4gICAgLy8gVE9ETzogVGVtcG9yYXJpbHkgY2hhbmdlZCBmcm9tIHByaXZhdGUgdG8gcHJvdGVjdGVkIHRvIHVuYmxvY2sgYnVpbGQuIFdlIG5lZWQgdG8gdGhpbmtcbiAgICAvLyAgICAgICBhYm91dCBob3cgdG8gaGFuZGxlIGpzaWkgdHlwZXMgd2l0aCBwcml2YXRlIGNvbnN0cnVjdG9ycy5cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjb2x1bW5zOiBzdHJpbmdbXSwgcHJpdmF0ZSByZWFkb25seSByZXN0cmljdGlvbnM6IFJlc3RyaWN0aW9uTWFwKSB7XG4gICAgICAgIC8vIFByaXZhdGUgY29uc3RydWN0b3Igc28gd2UgdmFsaWRhdGUgaW4gdGhlIC5jb25zdHJ1Y3QoKSBmYWN0b3J5IGZ1bmN0aW9uXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVzdHJpY3Qgd2hlcmUgdGhlIHBhdHRlcm4gYXBwbGllc1xuICAgICAqL1xuICAgIHB1YmxpYyB3aGVyZVN0cmluZyhjb2x1bW5OYW1lOiBzdHJpbmcsIGNvbXBhcmlzb246IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IFNwYWNlRGVsaW1pdGVkVGV4dFBhdHRlcm4ge1xuICAgICAgICBpZiAoY29sdW1uTmFtZSA9PT0gQ09MX0VMTElQU0lTKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW4ndCB1c2UgJy4uLicgaW4gYSByZXN0cmljdGlvblwiKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5jb2x1bW5zLmluZGV4T2YoY29sdW1uTmFtZSkgPT09IC0xKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvbHVtbiBpbiByZXN0cmljdGlvbnMgdGhhdCBpcyBub3QgaW4gY29sdW1uczogJHtjb2x1bW5OYW1lfWApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29tcGFyaXNvbiA9IHZhbGlkYXRlU3RyaW5nT3BlcmF0b3IoY29tcGFyaXNvbik7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBTcGFjZURlbGltaXRlZFRleHRQYXR0ZXJuKHRoaXMuY29sdW1ucywgdGhpcy5hZGRSZXN0cmljdGlvbihjb2x1bW5OYW1lLCB7XG4gICAgICAgICAgICBjb21wYXJpc29uLFxuICAgICAgICAgICAgc3RyaW5nVmFsdWU6IHZhbHVlXG4gICAgICAgIH0pKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXN0cmljdCB3aGVyZSB0aGUgcGF0dGVybiBhcHBsaWVzXG4gICAgICovXG4gICAgcHVibGljIHdoZXJlTnVtYmVyKGNvbHVtbk5hbWU6IHN0cmluZywgY29tcGFyaXNvbjogc3RyaW5nLCB2YWx1ZTogbnVtYmVyKTogU3BhY2VEZWxpbWl0ZWRUZXh0UGF0dGVybiB7XG4gICAgICAgIGlmIChjb2x1bW5OYW1lID09PSBDT0xfRUxMSVBTSVMpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbid0IHVzZSAnLi4uJyBpbiBhIHJlc3RyaWN0aW9uXCIpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmNvbHVtbnMuaW5kZXhPZihjb2x1bW5OYW1lKSA9PT0gLTEpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29sdW1uIGluIHJlc3RyaWN0aW9ucyB0aGF0IGlzIG5vdCBpbiBjb2x1bW5zOiAke2NvbHVtbk5hbWV9YCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb21wYXJpc29uID0gdmFsaWRhdGVOdW1lcmljYWxPcGVyYXRvcihjb21wYXJpc29uKTtcblxuICAgICAgICByZXR1cm4gbmV3IFNwYWNlRGVsaW1pdGVkVGV4dFBhdHRlcm4odGhpcy5jb2x1bW5zLCB0aGlzLmFkZFJlc3RyaWN0aW9uKGNvbHVtbk5hbWUsIHtcbiAgICAgICAgICAgIGNvbXBhcmlzb24sXG4gICAgICAgICAgICBudW1iZXJWYWx1ZTogdmFsdWVcbiAgICAgICAgfSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbG9nUGF0dGVyblN0cmluZygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gJ1snICsgdGhpcy5jb2x1bW5zLm1hcCh0aGlzLmNvbHVtbkV4cHJlc3Npb24uYmluZCh0aGlzKSkuam9pbignLCAnKSArICddJztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gdGhlIGNvbHVtbiBleHByZXNzaW9uIGZvciB0aGUgZ2l2ZW4gY29sdW1uXG4gICAgICovXG4gICAgcHJpdmF0ZSBjb2x1bW5FeHByZXNzaW9uKGNvbHVtbjogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHJlc3RyaWN0aW9ucyA9IHRoaXMucmVzdHJpY3Rpb25zW2NvbHVtbl07XG4gICAgICAgIGlmICghcmVzdHJpY3Rpb25zKSB7IHJldHVybiBjb2x1bW47IH1cblxuICAgICAgICByZXR1cm4gcmVzdHJpY3Rpb25zLm1hcChyID0+IHJlbmRlclJlc3RyaWN0aW9uKGNvbHVtbiwgcikpLmpvaW4oJyAmJiAnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNYWtlIGEgY29weSBvZiB0aGUgY3VycmVudCByZXN0cmljdGlvbnMgYW5kIGFkZCBvbmVcbiAgICAgKi9cbiAgICBwcml2YXRlIGFkZFJlc3RyaWN0aW9uKGNvbHVtbk5hbWU6IHN0cmluZywgcmVzdHJpY3Rpb246IENvbHVtblJlc3RyaWN0aW9uKSB7XG4gICAgICAgIGNvbnN0IHJldDogUmVzdHJpY3Rpb25NYXAgPSB7fTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXModGhpcy5yZXN0cmljdGlvbnMpKSB7XG4gICAgICAgICAgICByZXRba2V5XSA9IHRoaXMucmVzdHJpY3Rpb25zW2tleV0uc2xpY2UoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIShjb2x1bW5OYW1lIGluIHJldCkpIHsgcmV0W2NvbHVtbk5hbWVdID0gW107IH1cbiAgICAgICAgcmV0W2NvbHVtbk5hbWVdLnB1c2gocmVzdHJpY3Rpb24pO1xuICAgICAgICByZXR1cm4gcmV0O1xuICAgIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2x1bW5SZXN0cmljdGlvbiB7XG4gICAgLyoqXG4gICAgICogQ29tcGFyaXNvbiBvcGVyYXRvciB0byB1c2VcbiAgICAgKi9cbiAgICBjb21wYXJpc29uOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBTdHJpbmcgdmFsdWUgdG8gY29tcGFyZSB0b1xuICAgICAqXG4gICAgICogRXhhY3RseSBvbmUgb2YgJ3N0cmluZ1ZhbHVlJyBhbmQgJ251bWJlclZhbHVlJyBtdXN0IGJlIHNldC5cbiAgICAgKi9cbiAgICBzdHJpbmdWYWx1ZT86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIE51bWJlciB2YWx1ZSB0byBjb21wYXJlIHRvXG4gICAgICpcbiAgICAgKiBFeGFjdGx5IG9uZSBvZiAnc3RyaW5nVmFsdWUnIGFuZCAnbnVtYmVyVmFsdWUnIG11c3QgYmUgc2V0LlxuICAgICAqL1xuICAgIG51bWJlclZhbHVlPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIFF1b3RlIGEgdGVybSBmb3IgdXNlIGluIGEgcGF0dGVybiBleHByZXNzaW9uXG4gKlxuICogSXQncyBuZXZlciB3cm9uZyB0byBxdW90ZSBhIHN0cmluZyB0ZXJtLCBhbmQgcmVxdWlyZWQgaWYgdGhlIHRlcm1cbiAqIGNvbnRhaW5zIG5vbi1hbHBoYW51bWVyaWNhbCBjaGFyYWN0ZXJzLCBzbyB3ZSBqdXN0IGFsd2F5cyBkbyBpdC5cbiAqXG4gKiBJbm5lciBkb3VibGUgcXVvdGVzIGFyZSBlc2NhcGVkIHVzaW5nIGEgYmFja3NsYXNoLlxuICovXG5mdW5jdGlvbiBxdW90ZVRlcm0odGVybTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ1wiJyArIHRlcm0ucmVwbGFjZSgvXFxcXC9nLCAnXFxcXFxcXFwnKS5yZXBsYWNlKC9cIi9nLCAnXFxcXFwiJykgKyAnXCInO1xufVxuXG4vKipcbiAqIFJldHVybiB3aGV0aGVyIHRoZSBnaXZlbiBjb2x1bW4gbmFtZSBpcyB2YWxpZCBpbiBhIHNwYWNlLWRlbGltaXRlZCB0YWJsZVxuICovXG5mdW5jdGlvbiB2YWxpZENvbHVtbk5hbWUoY29sdW1uOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gY29sdW1uID09PSBDT0xfRUxMSVBTSVMgfHwgL15bYS16QS1aMC05Xy1dKyQvLmV4ZWMoY29sdW1uKTtcbn1cblxuLyoqXG4gKiBWYWxpZGF0ZSBhbmQgbm9ybWFsaXplIHRoZSBzdHJpbmcgY29tcGFyaXNvbiBvcGVyYXRvclxuICpcbiAqIENvcnJlY3QgZm9yIGEgY29tbW9uIHR5cG8vY29uZnVzaW9uLCB0cmVhdCAnPT0nIGFzICc9J1xuICovXG5mdW5jdGlvbiB2YWxpZGF0ZVN0cmluZ09wZXJhdG9yKG9wZXJhdG9yOiBzdHJpbmcpIHtcbiAgICBpZiAob3BlcmF0b3IgPT09ICc9PScpIHsgb3BlcmF0b3IgPSAnPSc7IH1cblxuICAgIGlmIChvcGVyYXRvciAhPT0gJz0nICYmIG9wZXJhdG9yICE9PSAnIT0nKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjb21wYXJpc29uIG9wZXJhdG9yICgnJHtvcGVyYXRvcn0nKSwgbXVzdCBiZSBlaXRoZXIgJz0nIG9yICchPSdgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gb3BlcmF0b3I7XG59XG5cbmNvbnN0IFZBTElEX09QRVJBVE9SUyA9IFsnPScsICchPScsICc8JywgJzw9JywgJz4nLCAnPj0nXTtcblxuLyoqXG4gKiBWYWxpZGF0ZSBhbmQgbm9ybWFsaXplIG51bWVyaWNhbCBjb21wYXJpc29uIG9wZXJhdG9yc1xuICpcbiAqIENvcnJlY3QgZm9yIGEgY29tbW9uIHR5cG8vY29uZnVzaW9uLCB0cmVhdCAnPT0nIGFzICc9J1xuICovXG5mdW5jdGlvbiB2YWxpZGF0ZU51bWVyaWNhbE9wZXJhdG9yKG9wZXJhdG9yOiBzdHJpbmcpIHtcbiAgICAvLyBDb3JyZWN0IGZvciBhIGNvbW1vbiB0eXBvLCB0cmVhdCAnPT0nIGFzICc9J1xuICAgIGlmIChvcGVyYXRvciA9PT0gJz09JykgeyBvcGVyYXRvciA9ICc9JzsgfVxuXG4gICAgaWYgKFZBTElEX09QRVJBVE9SUy5pbmRleE9mKG9wZXJhdG9yKSA9PT0gLTEpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNvbXBhcmlzb24gb3BlcmF0b3IgKCcke29wZXJhdG9yfScpLCBtdXN0IGJlIG9uZSBvZiAke1ZBTElEX09QRVJBVE9SUy5qb2luKCcsICcpfWApO1xuICAgIH1cblxuICAgIHJldHVybiBvcGVyYXRvcjtcbn1cblxuLyoqXG4gKiBSZW5kZXIgYSB0YWJsZSByZXN0cmljdGlvblxuICovXG5mdW5jdGlvbiByZW5kZXJSZXN0cmljdGlvbihjb2x1bW46IHN0cmluZywgcmVzdHJpY3Rpb246IENvbHVtblJlc3RyaWN0aW9uKSB7XG4gICAgaWYgKHJlc3RyaWN0aW9uLm51bWJlclZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIGAke2NvbHVtbn0gJHtyZXN0cmljdGlvbi5jb21wYXJpc29ufSAke3Jlc3RyaWN0aW9uLm51bWJlclZhbHVlfWA7XG4gICAgfSBlbHNlIGlmIChyZXN0cmljdGlvbi5zdHJpbmdWYWx1ZSkge1xuICAgICAgICByZXR1cm4gYCR7Y29sdW1ufSAke3Jlc3RyaWN0aW9uLmNvbXBhcmlzb259ICR7cXVvdGVUZXJtKHJlc3RyaWN0aW9uLnN0cmluZ1ZhbHVlKX1gO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCByZXN0cmljdGlvbicpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gc3VtKHhzOiBudW1iZXJbXSk6IG51bWJlciB7XG4gICAgcmV0dXJuIHhzLnJlZHVjZSgoYSwgYykgPT4gYSArIGMsIDApO1xufSJdfQ==
import iam = require('@aws-cdk/aws-iam');
import cdk = require('@aws-cdk/cdk');
import { LogGroup } from './log-group';
import { LogGroupRef } from './log-group';
import { IFilterPattern } from './pattern';

@@ -19,3 +19,3 @@ /**

*/
logSubscriptionDestination(sourceLogGroup: LogGroup): LogSubscriptionDestination;
logSubscriptionDestination(sourceLogGroup: LogGroupRef): LogSubscriptionDestination;
}

@@ -44,3 +44,3 @@ /**

*/
logGroup: LogGroup;
logGroup: LogGroupRef;
/**

@@ -47,0 +47,0 @@ * The destination to send the filtered events to.

@@ -21,2 +21,2 @@ "use strict";

exports.SubscriptionFilter = SubscriptionFilter;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInN1YnNjcmlwdGlvbi1maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxvQ0FBcUM7QUFFckMscURBQWtEO0FBMkRsRDs7R0FFRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFDakQsWUFBWSxNQUFxQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUN6RSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsMEJBQTBCLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRS9FLElBQUksK0JBQWMsQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQzVELFlBQVksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVk7WUFDekMsY0FBYyxFQUFFLFNBQVMsQ0FBQyxHQUFHO1lBQzdCLE9BQU8sRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTztZQUNqRCxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0I7U0FDdEQsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKO0FBYkQsZ0RBYUMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInN1YnNjcmlwdGlvbi1maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxvQ0FBcUM7QUFFckMscURBQWtEO0FBMkRsRDs7R0FFRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFDakQsWUFBWSxNQUFxQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUN6RSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsMEJBQTBCLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRS9FLElBQUksK0JBQWMsQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQzVELFlBQVksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVk7WUFDekMsY0FBYyxFQUFFLFNBQVMsQ0FBQyxHQUFHO1lBQzdCLE9BQU8sRUFBRSxTQUFTLENBQUMsSUFBSSxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTztZQUNqRCxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0I7U0FDdEQsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKO0FBYkQsZ0RBYUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaWFtID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWlhbScpO1xuaW1wb3J0IGNkayA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2NkaycpO1xuaW1wb3J0IHsgTG9nR3JvdXBSZWYgfSBmcm9tICcuL2xvZy1ncm91cCc7XG5pbXBvcnQgeyBjbG91ZGZvcm1hdGlvbiB9IGZyb20gJy4vbG9ncy5nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgSUZpbHRlclBhdHRlcm4gfSBmcm9tICcuL3BhdHRlcm4nO1xuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgY2xhc3NlcyB0aGF0IGNhbiBiZSB0aGUgZGVzdGluYXRpb24gb2YgYSBsb2cgU3Vic2NyaXB0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUxvZ1N1YnNjcmlwdGlvbkRlc3RpbmF0aW9uIHtcbiAgICAvKipcbiAgICAgKiBSZXR1cm4gdGhlIHByb3BlcnRpZXMgcmVxdWlyZWQgdG8gc2VuZCBzdWJzY3JpcHRpb24gZXZlbnRzIHRvIHRoaXMgZGVzdGluYXRpb24uXG4gICAgICpcbiAgICAgKiBJZiBuZWNlc3NhcnksIHRoZSBkZXN0aW5hdGlvbiBjYW4gdXNlIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBTdWJzY3JpcHRpb25GaWx0ZXJcbiAgICAgKiBvYmplY3QgaXRzZWxmIHRvIGNvbmZpZ3VyZSBpdHMgcGVybWlzc2lvbnMgdG8gYWxsb3cgdGhlIHN1YnNjcmlwdGlvbiB0byB3cml0ZVxuICAgICAqIHRvIGl0LlxuICAgICAqXG4gICAgICogVGhlIGRlc3RpbmF0aW9uIG1heSByZWNvbmZpZ3VyZSBpdHMgb3duIHBlcm1pc3Npb25zIGluIHJlc3BvbnNlIHRvIHRoaXNcbiAgICAgKiBmdW5jdGlvbiBjYWxsLlxuICAgICAqL1xuICAgIGxvZ1N1YnNjcmlwdGlvbkRlc3RpbmF0aW9uKHNvdXJjZUxvZ0dyb3VwOiBMb2dHcm91cFJlZik6IExvZ1N1YnNjcmlwdGlvbkRlc3RpbmF0aW9uO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgcmV0dXJuZWQgYnkgYSBTdWJzY3JpcHRpb24gZGVzdGluYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMb2dTdWJzY3JpcHRpb25EZXN0aW5hdGlvbiB7XG4gICAgLyoqXG4gICAgICogVGhlIEFSTiBvZiB0aGUgc3Vic2NyaXB0aW9uJ3MgZGVzdGluYXRpb25cbiAgICAgKi9cbiAgICByZWFkb25seSBhcm46IGNkay5Bcm47XG5cbiAgICAvKipcbiAgICAgKiBUaGUgcm9sZSB0byBhc3N1bWUgdG8gd3JpdGUgbG9nIGV2ZW50cyB0byB0aGUgZGVzdGluYXRpb25cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IE5vIHJvbGUgYXNzdW1lZFxuICAgICAqL1xuICAgIHJlYWRvbmx5IHJvbGU/OiBpYW0uUm9sZTtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIFN1YnNjcmlwdGlvbkZpbHRlclxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNjcmlwdGlvbkZpbHRlclByb3BzIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbG9nIGdyb3VwIHRvIGNyZWF0ZSB0aGUgc3Vic2NyaXB0aW9uIG9uLlxuICAgICAqL1xuICAgIGxvZ0dyb3VwOiBMb2dHcm91cFJlZjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBkZXN0aW5hdGlvbiB0byBzZW5kIHRoZSBmaWx0ZXJlZCBldmVudHMgdG8uXG4gICAgICpcbiAgICAgKiBGb3IgZXhhbXBsZSwgYSBLaW5lc2lzIHN0cmVhbSBvciBhIExhbWJkYSBmdW5jdGlvbi5cbiAgICAgKi9cbiAgICBkZXN0aW5hdGlvbjogSUxvZ1N1YnNjcmlwdGlvbkRlc3RpbmF0aW9uO1xuXG4gICAgLyoqXG4gICAgICogTG9nIGV2ZW50cyBtYXRjaGluZyB0aGlzIHBhdHRlcm4gd2lsbCBiZSBzZW50IHRvIHRoZSBkZXN0aW5hdGlvbi5cbiAgICAgKi9cbiAgICBmaWx0ZXJQYXR0ZXJuOiBJRmlsdGVyUGF0dGVybjtcbn1cblxuLyoqXG4gKiBBIG5ldyBTdWJzY3JpcHRpb24gb24gYSBDbG91ZFdhdGNoIGxvZyBncm91cC5cbiAqL1xuZXhwb3J0IGNsYXNzIFN1YnNjcmlwdGlvbkZpbHRlciBleHRlbmRzIGNkay5Db25zdHJ1Y3Qge1xuICAgIGNvbnN0cnVjdG9yKHBhcmVudDogY2RrLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFN1YnNjcmlwdGlvbkZpbHRlclByb3BzKSB7XG4gICAgICAgIHN1cGVyKHBhcmVudCwgaWQpO1xuXG4gICAgICAgIGNvbnN0IGRlc3RQcm9wcyA9IHByb3BzLmRlc3RpbmF0aW9uLmxvZ1N1YnNjcmlwdGlvbkRlc3RpbmF0aW9uKHByb3BzLmxvZ0dyb3VwKTtcblxuICAgICAgICBuZXcgY2xvdWRmb3JtYXRpb24uU3Vic2NyaXB0aW9uRmlsdGVyUmVzb3VyY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgICAgICAgbG9nR3JvdXBOYW1lOiBwcm9wcy5sb2dHcm91cC5sb2dHcm91cE5hbWUsXG4gICAgICAgICAgICBkZXN0aW5hdGlvbkFybjogZGVzdFByb3BzLmFybixcbiAgICAgICAgICAgIHJvbGVBcm46IGRlc3RQcm9wcy5yb2xlICYmIGRlc3RQcm9wcy5yb2xlLnJvbGVBcm4sXG4gICAgICAgICAgICBmaWx0ZXJQYXR0ZXJuOiBwcm9wcy5maWx0ZXJQYXR0ZXJuLmxvZ1BhdHRlcm5TdHJpbmdcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
{
"name": "@aws-cdk/aws-logs",
"version": "0.8.2",
"version": "0.9.0",
"description": "The CDK Construct Library for AWS::Logs",

@@ -17,2 +17,8 @@ "main": "lib/index.js",

},
"dotnet": {
"namespace": "Amazon.CDK.AWS.Logs",
"packageId": "Amazon.CDK.AWS.Logs",
"signAssembly": true,
"assemblyOriginatorKeyFile": "../../key.snk"
},
"sphinx": {}

@@ -50,13 +56,13 @@ }

"devDependencies": {
"@aws-cdk/assert": "^0.8.2",
"cdk-build-tools": "^0.8.2",
"cdk-integ-tools": "^0.8.2",
"cfn2ts": "^0.8.2",
"pkglint": "^0.8.2"
"@aws-cdk/assert": "^0.9.0",
"cdk-build-tools": "^0.9.0",
"cdk-integ-tools": "^0.9.0",
"cfn2ts": "^0.9.0",
"pkglint": "^0.9.0"
},
"dependencies": {
"@aws-cdk/aws-iam": "^0.8.2",
"@aws-cdk/cdk": "^0.8.2"
"@aws-cdk/aws-iam": "^0.9.0",
"@aws-cdk/cdk": "^0.9.0"
},
"homepage": "https://github.com/awslabs/aws-cdk"
}

@@ -66,2 +66,13 @@ ## AWS CloudWatch Logs Construct Library

A very simple MetricFilter can be created by using the `logGroup.extractMetric()`
helper function:
```ts
logGroup.extractMetric('$.jsonField', 'Namespace', 'MetricName');
```
Will extract the value of `jsonField` wherever it occurs in JSON-structed
log records in the LogGroup, and emit them to CloudWatch Metrics under
the name `Namespace/MetricName`.
### Patterns

@@ -68,0 +79,0 @@

@@ -27,2 +27,2 @@ "use strict";

Array.isArray(infiniteLogGroup);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhhbXBsZS5yZXRlbnRpb24ubGl0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZXhhbXBsZS5yZXRlbnRpb24ubGl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0NBQXFDO0FBQ3JDLGdDQUFrQztBQUVsQyxNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO0FBRTFCLFNBQVMsYUFBYTtJQUNsQixTQUFTO0lBQ1QsMENBQTBDO0lBQzFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBUSxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUU7UUFDN0MsYUFBYSxFQUFFLENBQUM7S0FDbkIsQ0FBQyxDQUFDO0lBQ0gsU0FBUztJQUNULE9BQU8sUUFBUSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxTQUFTLGdCQUFnQjtJQUNyQixTQUFTO0lBQ1QsNkNBQTZDO0lBQzdDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBUSxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUU7UUFDN0MsYUFBYSxFQUFFLFFBQVE7S0FDMUIsQ0FBQyxDQUFDO0lBQ0gsU0FBUztJQUNULE9BQU8sUUFBUSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxFQUFFO0FBRUYsS0FBSyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUM3QixLQUFLLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhhbXBsZS5yZXRlbnRpb24ubGl0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZXhhbXBsZS5yZXRlbnRpb24ubGl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0NBQXFDO0FBQ3JDLGdDQUFrQztBQUVsQyxNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO0FBRTFCLFNBQVMsYUFBYTtJQUNsQixTQUFTO0lBQ1QsMENBQTBDO0lBQzFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBUSxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUU7UUFDN0MsYUFBYSxFQUFFLENBQUM7S0FDbkIsQ0FBQyxDQUFDO0lBQ0gsU0FBUztJQUNULE9BQU8sUUFBUSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxTQUFTLGdCQUFnQjtJQUNyQixTQUFTO0lBQ1QsNkNBQTZDO0lBQzdDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBUSxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUU7UUFDN0MsYUFBYSxFQUFFLFFBQVE7S0FDMUIsQ0FBQyxDQUFDO0lBQ0gsU0FBUztJQUNULE9BQU8sUUFBUSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxFQUFFO0FBRUYsS0FBSyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUM3QixLQUFLLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGFjayB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5pbXBvcnQgeyBMb2dHcm91cCB9IGZyb20gJy4uL2xpYic7XG5cbmNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbmZ1bmN0aW9uIHNob3J0TG9nR3JvdXAoKSB7XG4gICAgLy8vICFzaG93XG4gICAgLy8gQ29uZmlndXJlIGxvZyBncm91cCBmb3Igc2hvcnQgcmV0ZW50aW9uXG4gICAgY29uc3QgbG9nR3JvdXAgPSBuZXcgTG9nR3JvdXAoc3RhY2ssICdMb2dHcm91cCcsIHtcbiAgICAgICAgcmV0ZW50aW9uRGF5czogN1xuICAgIH0pO1xuICAgIC8vLyAhaGlkZVxuICAgIHJldHVybiBsb2dHcm91cDtcbn1cblxuZnVuY3Rpb24gaW5maW5pdGVMb2dHcm91cCgpIHtcbiAgICAvLy8gIXNob3dcbiAgICAvLyBDb25maWd1cmUgbG9nIGdyb3VwIGZvciBpbmZpbml0ZSByZXRlbnRpb25cbiAgICBjb25zdCBsb2dHcm91cCA9IG5ldyBMb2dHcm91cChzdGFjaywgJ0xvZ0dyb3VwJywge1xuICAgICAgICByZXRlbnRpb25EYXlzOiBJbmZpbml0eVxuICAgIH0pO1xuICAgIC8vLyAhaGlkZVxuICAgIHJldHVybiBsb2dHcm91cDtcbn1cblxuLy9cblxuQXJyYXkuaXNBcnJheShzaG9ydExvZ0dyb3VwKTtcbkFycmF5LmlzQXJyYXkoaW5maW5pdGVMb2dHcm91cCk7XG4iXX0=

@@ -25,2 +25,2 @@ "use strict";

process.stdout.write(app.run());
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcubWV0cmljZmlsdGVyLmxpdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImludGVnLm1ldHJpY2ZpbHRlci5saXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBc0Q7QUFDdEQsZ0NBQStEO0FBRS9ELE1BQU0sc0JBQXVCLFNBQVEsV0FBSztJQUN0QyxZQUFZLE1BQVcsRUFBRSxJQUFZLEVBQUUsS0FBa0I7UUFDckQsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFM0IsTUFBTSxRQUFRLEdBQUcsSUFBSSxjQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUM1QyxjQUFjLEVBQUUsS0FBSztTQUN4QixDQUFDLENBQUM7UUFFSCxTQUFTO1FBQ1QsSUFBSSxrQkFBWSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUU7WUFDbkMsUUFBUTtZQUNSLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLGFBQWEsRUFBRSxtQkFBYSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7WUFDaEQsV0FBVyxFQUFFLFdBQVc7U0FDM0IsQ0FBQyxDQUFDO1FBQ0gsU0FBUztJQUNiLENBQUM7Q0FDSjtBQUVELE1BQU0sR0FBRyxHQUFHLElBQUksU0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNsQyxJQUFJLHNCQUFzQixDQUFDLEdBQUcsRUFBRSw0QkFBNEIsQ0FBQyxDQUFDO0FBQzlELE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcubWV0cmljZmlsdGVyLmxpdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImludGVnLm1ldHJpY2ZpbHRlci5saXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBc0Q7QUFDdEQsZ0NBQStEO0FBRS9ELE1BQU0sc0JBQXVCLFNBQVEsV0FBSztJQUN0QyxZQUFZLE1BQVcsRUFBRSxJQUFZLEVBQUUsS0FBa0I7UUFDckQsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFM0IsTUFBTSxRQUFRLEdBQUcsSUFBSSxjQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUM1QyxjQUFjLEVBQUUsS0FBSztTQUN4QixDQUFDLENBQUM7UUFFSCxTQUFTO1FBQ1QsSUFBSSxrQkFBWSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUU7WUFDbkMsUUFBUTtZQUNSLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLGFBQWEsRUFBRSxtQkFBYSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7WUFDaEQsV0FBVyxFQUFFLFdBQVc7U0FDM0IsQ0FBQyxDQUFDO1FBQ0gsU0FBUztJQUNiLENBQUM7Q0FDSjtBQUVELE1BQU0sR0FBRyxHQUFHLElBQUksU0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNsQyxJQUFJLHNCQUFzQixDQUFDLEdBQUcsRUFBRSw0QkFBNEIsQ0FBQyxDQUFDO0FBQzlELE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBwLCBTdGFjaywgU3RhY2tQcm9wcyB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5pbXBvcnQgeyBGaWx0ZXJQYXR0ZXJuLCBMb2dHcm91cCwgTWV0cmljRmlsdGVyIH0gZnJvbSAnLi4vbGliJztcblxuY2xhc3MgTWV0cmljRmlsdGVySW50ZWdTdGFjayBleHRlbmRzIFN0YWNrIHtcbiAgICBjb25zdHJ1Y3RvcihwYXJlbnQ6IEFwcCwgbmFtZTogc3RyaW5nLCBwcm9wcz86IFN0YWNrUHJvcHMpIHtcbiAgICAgICAgc3VwZXIocGFyZW50LCBuYW1lLCBwcm9wcyk7XG5cbiAgICAgICAgY29uc3QgbG9nR3JvdXAgPSBuZXcgTG9nR3JvdXAodGhpcywgJ0xvZ0dyb3VwJywge1xuICAgICAgICAgICAgcmV0YWluTG9nR3JvdXA6IGZhbHNlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vLyAhc2hvd1xuICAgICAgICBuZXcgTWV0cmljRmlsdGVyKHRoaXMsICdNZXRyaWNGaWx0ZXInLCB7XG4gICAgICAgICAgICBsb2dHcm91cCxcbiAgICAgICAgICAgIG1ldHJpY05hbWVzcGFjZTogJ015QXBwJyxcbiAgICAgICAgICAgIG1ldHJpY05hbWU6ICdMYXRlbmN5JyxcbiAgICAgICAgICAgIGZpbHRlclBhdHRlcm46IEZpbHRlclBhdHRlcm4uZXhpc3RzKCckLmxhdGVuY3knKSxcbiAgICAgICAgICAgIG1ldHJpY1ZhbHVlOiAnJC5sYXRlbmN5J1xuICAgICAgICB9KTtcbiAgICAgICAgLy8vICFoaWRlXG4gICAgfVxufVxuXG5jb25zdCBhcHAgPSBuZXcgQXBwKHByb2Nlc3MuYXJndik7XG5uZXcgTWV0cmljRmlsdGVySW50ZWdTdGFjayhhcHAsICdhd3MtY2RrLW1ldHJpY2ZpbHRlci1pbnRlZycpO1xucHJvY2Vzcy5zdGRvdXQud3JpdGUoYXBwLnJ1bigpKTtcbiJdfQ==

@@ -49,2 +49,2 @@ "use strict";

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5kZXN0aW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QuZGVzdGluYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUF1RDtBQUN2RCx3Q0FBeUM7QUFDekMsb0NBQXFDO0FBRXJDLGdDQUFpRDtBQUVqRCxpQkFBUztJQUNMLG9CQUFvQixDQUFDLElBQVU7UUFDM0IsUUFBUTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFO1lBQ3JDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyw4QkFBOEIsQ0FBQztTQUN0RSxDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsSUFBSSw2QkFBdUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFO1lBQ3ZDLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLElBQUk7WUFDSixTQUFTLEVBQUUsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztTQUN0QyxDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLHdCQUF3QixFQUFFO1lBQ3BELGVBQWUsRUFBRSxlQUFlO1lBQ2hDLE9BQU8sRUFBRSxFQUFFLFlBQVksRUFBRSxDQUFFLGNBQWMsRUFBRSxLQUFLLENBQUUsRUFBRTtZQUNwRCxTQUFTLEVBQUUsV0FBVztTQUN6QixDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsMkJBQTJCLENBQUMsSUFBVTtRQUNsQyxRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUU7WUFDckMsU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLDhCQUE4QixDQUFDO1NBQ3RFLENBQUMsQ0FBQztRQUVILE1BQU0sSUFBSSxHQUFHLElBQUksNkJBQXVCLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUNwRCxlQUFlLEVBQUUsZUFBZTtZQUNoQyxJQUFJO1lBQ0osU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7U0FDdEMsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxFQUFFO2FBQ3JDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBRWpDLE9BQU87UUFDUCxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLHFCQUFZLENBQUMsd0JBQXdCLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNuRSxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBRWhELE9BQU8sR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5kZXN0aW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QuZGVzdGluYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUF1RDtBQUN2RCx3Q0FBeUM7QUFDekMsb0NBQXFDO0FBRXJDLGdDQUFpRDtBQUVqRCxpQkFBUztJQUNMLG9CQUFvQixDQUFDLElBQVU7UUFDM0IsUUFBUTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFO1lBQ3JDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyw4QkFBOEIsQ0FBQztTQUN0RSxDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsSUFBSSw2QkFBdUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFO1lBQ3ZDLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLElBQUk7WUFDSixTQUFTLEVBQUUsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztTQUN0QyxDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLHdCQUF3QixFQUFFO1lBQ3BELGVBQWUsRUFBRSxlQUFlO1lBQ2hDLE9BQU8sRUFBRSxFQUFFLFlBQVksRUFBRSxDQUFFLGNBQWMsRUFBRSxLQUFLLENBQUUsRUFBRTtZQUNwRCxTQUFTLEVBQUUsV0FBVztTQUN6QixDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsMkJBQTJCLENBQUMsSUFBVTtRQUNsQyxRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUU7WUFDckMsU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLDhCQUE4QixDQUFDO1NBQ3RFLENBQUMsQ0FBQztRQUVILE1BQU0sSUFBSSxHQUFHLElBQUksNkJBQXVCLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUNwRCxlQUFlLEVBQUUsZUFBZTtZQUNoQyxJQUFJO1lBQ0osU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7U0FDdEMsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxFQUFFO2FBQ3JDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBRWpDLE9BQU87UUFDUCxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLHFCQUFZLENBQUMsd0JBQXdCLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNuRSxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBRWhELE9BQU8sR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleHBlY3QsIGhhdmVSZXNvdXJjZSB9IGZyb20gJ0Bhd3MtY2RrL2Fzc2VydCc7XG5pbXBvcnQgaWFtID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWlhbScpO1xuaW1wb3J0IGNkayA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2NkaycpO1xuaW1wb3J0IHsgVGVzdCB9IGZyb20gJ25vZGV1bml0JztcbmltcG9ydCB7IENyb3NzQWNjb3VudERlc3RpbmF0aW9uIH0gZnJvbSAnLi4vbGliJztcblxuZXhwb3J0ID0ge1xuICAgICdzaW1wbGUgZGVzdGluYXRpb24nKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgLy8gR0lWRU5cbiAgICAgICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG4gICAgICAgIGNvbnN0IHJvbGUgPSBuZXcgaWFtLlJvbGUoc3RhY2ssICdSb2xlJywge1xuICAgICAgICAgICAgYXNzdW1lZEJ5OiBuZXcgY2RrLlNlcnZpY2VQcmluY2lwYWwoJ2xvZ3MudXMtZWFzdC0yLmFtYXpvbmF3cy5jb20nKVxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBXSEVOXG4gICAgICAgIG5ldyBDcm9zc0FjY291bnREZXN0aW5hdGlvbihzdGFjaywgJ0Rlc3QnLCB7XG4gICAgICAgICAgICBkZXN0aW5hdGlvbk5hbWU6ICdNeURlc3RpbmF0aW9uJyxcbiAgICAgICAgICAgIHJvbGUsXG4gICAgICAgICAgICB0YXJnZXRBcm46IG5ldyBjZGsuQXJuKCdhcm46Ym9ndXMnKVxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUSEVOXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OkxvZ3M6OkRlc3RpbmF0aW9uJywge1xuICAgICAgICAgICAgRGVzdGluYXRpb25OYW1lOiAnTXlEZXN0aW5hdGlvbicsXG4gICAgICAgICAgICBSb2xlQXJuOiB7IFwiRm46OkdldEF0dFwiOiBbIFwiUm9sZTFBQkNDNUYwXCIsIFwiQXJuXCIgXSB9LFxuICAgICAgICAgICAgVGFyZ2V0QXJuOiAnYXJuOmJvZ3VzJyxcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnYWRkIHBvbGljeSB0byBkZXN0aW5hdGlvbicodGVzdDogVGVzdCkge1xuICAgICAgICAvLyBHSVZFTlxuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcbiAgICAgICAgY29uc3Qgcm9sZSA9IG5ldyBpYW0uUm9sZShzdGFjaywgJ1JvbGUnLCB7XG4gICAgICAgICAgICBhc3N1bWVkQnk6IG5ldyBjZGsuU2VydmljZVByaW5jaXBhbCgnbG9ncy51cy1lYXN0LTIuYW1hem9uYXdzLmNvbScpXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IGRlc3QgPSBuZXcgQ3Jvc3NBY2NvdW50RGVzdGluYXRpb24oc3RhY2ssICdEZXN0Jywge1xuICAgICAgICAgICAgZGVzdGluYXRpb25OYW1lOiAnTXlEZXN0aW5hdGlvbicsXG4gICAgICAgICAgICByb2xlLFxuICAgICAgICAgICAgdGFyZ2V0QXJuOiBuZXcgY2RrLkFybignYXJuOmJvZ3VzJylcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gV0hFTlxuICAgICAgICBkZXN0LmFkZFRvUG9saWN5KG5ldyBjZGsuUG9saWN5U3RhdGVtZW50KClcbiAgICAgICAgICAgIC5hZGRBY3Rpb24oJ2xvZ3M6VGFsa1RvTWUnKSk7XG5cbiAgICAgICAgLy8gVEhFTlxuICAgICAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpMb2dzOjpEZXN0aW5hdGlvbicsIChwcm9wczogYW55KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwb2wgPSBKU09OLnBhcnNlKHByb3BzLkRlc3RpbmF0aW9uUG9saWN5KTtcblxuICAgICAgICAgICAgcmV0dXJuIHBvbC5TdGF0ZW1lbnRbMF0uQWN0aW9uID09PSAnbG9nczpUYWxrVG9NZSc7XG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9XG59O1xuIl19

@@ -7,3 +7,5 @@ import { Test } from 'nodeunit';

'will delete log group if asked to'(test: Test): void;
'export/import'(test: Test): void;
'extractMetric'(test: Test): void;
};
export = _default;

@@ -63,4 +63,36 @@ "use strict";

test.done();
},
'export/import'(test) {
// GIVEN
const stack1 = new cdk_1.Stack();
const lg = new lib_1.LogGroup(stack1, 'LogGroup');
const stack2 = new cdk_1.Stack();
// WHEN
const imported = lib_1.LogGroupRef.import(stack2, 'Import', lg.export());
imported.newStream(stack2, 'MakeMeAStream');
// THEN
assert_1.expect(stack2).to(assert_1.haveResource('AWS::Logs::LogStream', {}));
test.done();
},
'extractMetric'(test) {
// GIVEN
const stack = new cdk_1.Stack();
const lg = new lib_1.LogGroup(stack, 'LogGroup');
// WHEN
lg.extractMetric('$.myField', 'MyService', 'Field');
// THEN
assert_1.expect(stack).to(assert_1.haveResource('AWS::Logs::MetricFilter', {
FilterPattern: "{ $.myField = \"*\" }",
LogGroupName: { Ref: "LogGroupF5B46931" },
MetricTransformations: [
{
MetricName: "Field",
MetricNamespace: "MyService",
MetricValue: "$.myField"
}
]
}));
test.done();
}
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5sb2dncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QubG9nZ3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUFzRTtBQUN0RSxzQ0FBcUM7QUFFckMsZ0NBQWtDO0FBRWxDLGlCQUFTO0lBQ0wsaUJBQWlCLENBQUMsSUFBVTtRQUN4QixRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLEVBQUUsQ0FBQztRQUUxQixPQUFPO1FBQ1AsSUFBSSxjQUFRLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRTtZQUM1QixhQUFhLEVBQUUsQ0FBQztTQUNuQixDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLHFCQUFxQixFQUFFO1lBQ2pELGVBQWUsRUFBRSxDQUFDO1NBQ3JCLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxJQUFVO1FBQzFCLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxJQUFJLGNBQVEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFaEMsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxxQkFBcUIsRUFBRTtZQUNqRCxlQUFlLEVBQUUsR0FBRztTQUN2QixDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQscURBQXFELENBQUMsSUFBVTtRQUM1RCxRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLEVBQUUsQ0FBQztRQUUxQixPQUFPO1FBQ1AsSUFBSSxjQUFRLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRTtZQUM1QixhQUFhLEVBQUUsUUFBUTtTQUMxQixDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxzQkFBYSxDQUFDO1lBQzNCLFNBQVMsRUFBRTtnQkFDUCxnQkFBZ0IsRUFBRTtvQkFDZCxJQUFJLEVBQUUscUJBQXFCO29CQUMzQixjQUFjLEVBQUUsUUFBUTtpQkFDM0I7YUFDSjtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxtQ0FBbUMsQ0FBQyxJQUFVO1FBQzFDLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxJQUFJLGNBQVEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFO1lBQzVCLGFBQWEsRUFBRSxRQUFRO1lBQ3ZCLGNBQWMsRUFBRSxLQUFLO1NBQ3hCLENBQUMsQ0FBQztRQUVILE9BQU87UUFDUCxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLHNCQUFhLENBQUM7WUFDM0IsU0FBUyxFQUFFO2dCQUNQLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLHFCQUFxQixFQUFFO2FBQ2xEO1NBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5sb2dncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QubG9nZ3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUFzRTtBQUN0RSxzQ0FBcUM7QUFFckMsZ0NBQStDO0FBRS9DLGlCQUFTO0lBQ0wsaUJBQWlCLENBQUMsSUFBVTtRQUN4QixRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLEVBQUUsQ0FBQztRQUUxQixPQUFPO1FBQ1AsSUFBSSxjQUFRLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRTtZQUM1QixhQUFhLEVBQUUsQ0FBQztTQUNuQixDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLHFCQUFxQixFQUFFO1lBQ2pELGVBQWUsRUFBRSxDQUFDO1NBQ3JCLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxJQUFVO1FBQzFCLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxJQUFJLGNBQVEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFaEMsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxxQkFBcUIsRUFBRTtZQUNqRCxlQUFlLEVBQUUsR0FBRztTQUN2QixDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQscURBQXFELENBQUMsSUFBVTtRQUM1RCxRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLEVBQUUsQ0FBQztRQUUxQixPQUFPO1FBQ1AsSUFBSSxjQUFRLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRTtZQUM1QixhQUFhLEVBQUUsUUFBUTtTQUMxQixDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxzQkFBYSxDQUFDO1lBQzNCLFNBQVMsRUFBRTtnQkFDUCxnQkFBZ0IsRUFBRTtvQkFDZCxJQUFJLEVBQUUscUJBQXFCO29CQUMzQixjQUFjLEVBQUUsUUFBUTtpQkFDM0I7YUFDSjtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxtQ0FBbUMsQ0FBQyxJQUFVO1FBQzFDLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxJQUFJLGNBQVEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFO1lBQzVCLGFBQWEsRUFBRSxRQUFRO1lBQ3ZCLGNBQWMsRUFBRSxLQUFLO1NBQ3hCLENBQUMsQ0FBQztRQUVILE9BQU87UUFDUCxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLHNCQUFhLENBQUM7WUFDM0IsU0FBUyxFQUFFO2dCQUNQLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLHFCQUFxQixFQUFFO2FBQ2xEO1NBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELGVBQWUsQ0FBQyxJQUFVO1FBQ3RCLFFBQVE7UUFDUixNQUFNLE1BQU0sR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBQzNCLE1BQU0sRUFBRSxHQUFHLElBQUksY0FBUSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztRQUM1QyxNQUFNLE1BQU0sR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTNCLE9BQU87UUFDUCxNQUFNLFFBQVEsR0FBRyxpQkFBVyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLFFBQVEsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBRTVDLE9BQU87UUFDUCxlQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLHFCQUFZLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU1RCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELGVBQWUsQ0FBQyxJQUFVO1FBQ3RCLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBQzFCLE1BQU0sRUFBRSxHQUFHLElBQUksY0FBUSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUUzQyxPQUFPO1FBQ1AsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXBELE9BQU87UUFDUCxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLHFCQUFZLENBQUMseUJBQXlCLEVBQUU7WUFDckQsYUFBYSxFQUFFLHVCQUF1QjtZQUN0QyxZQUFZLEVBQUUsRUFBRSxHQUFHLEVBQUUsa0JBQWtCLEVBQUU7WUFDekMscUJBQXFCLEVBQUU7Z0JBQ3JCO29CQUNFLFVBQVUsRUFBRSxPQUFPO29CQUNuQixlQUFlLEVBQUUsV0FBVztvQkFDNUIsV0FBVyxFQUFFLFdBQVc7aUJBQ3pCO2FBQ0Y7U0FDSixDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBRUosQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4cGVjdCwgaGF2ZVJlc291cmNlLCBtYXRjaFRlbXBsYXRlIH0gZnJvbSAnQGF3cy1jZGsvYXNzZXJ0JztcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgeyBMb2dHcm91cCwgTG9nR3JvdXBSZWYgfSBmcm9tICcuLi9saWInO1xuXG5leHBvcnQgPSB7XG4gICAgJ2ZpeGVkIHJldGVudGlvbicodGVzdDogVGVzdCkge1xuICAgICAgICAvLyBHSVZFTlxuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgICAgIC8vIFdIRU5cbiAgICAgICAgbmV3IExvZ0dyb3VwKHN0YWNrLCAnTG9nR3JvdXAnLCB7XG4gICAgICAgICAgICByZXRlbnRpb25EYXlzOiA3XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFRIRU5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6TG9nczo6TG9nR3JvdXAnLCB7XG4gICAgICAgICAgICBSZXRlbnRpb25JbkRheXM6IDdcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnZGVmYXVsdCByZXRlbnRpb24nKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgLy8gR0lWRU5cbiAgICAgICAgY29uc3Qgc3RhY2sgPSBuZXcgU3RhY2soKTtcblxuICAgICAgICAvLyBXSEVOXG4gICAgICAgIG5ldyBMb2dHcm91cChzdGFjaywgJ0xvZ0dyb3VwJyk7XG5cbiAgICAgICAgLy8gVEhFTlxuICAgICAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQVdTOjpMb2dzOjpMb2dHcm91cCcsIHtcbiAgICAgICAgICAgIFJldGVudGlvbkluRGF5czogNzMwXG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ2luZmluaXRlIHJldGVudGlvbi9kb250IGRlbGV0ZSBsb2cgZ3JvdXAgYnkgZGVmYXVsdCcodGVzdDogVGVzdCkge1xuICAgICAgICAvLyBHSVZFTlxuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgICAgIC8vIFdIRU5cbiAgICAgICAgbmV3IExvZ0dyb3VwKHN0YWNrLCAnTG9nR3JvdXAnLCB7XG4gICAgICAgICAgICByZXRlbnRpb25EYXlzOiBJbmZpbml0eVxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUSEVOXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8obWF0Y2hUZW1wbGF0ZSh7XG4gICAgICAgICAgICBSZXNvdXJjZXM6IHtcbiAgICAgICAgICAgICAgICBMb2dHcm91cEY1QjQ2OTMxOiB7XG4gICAgICAgICAgICAgICAgICAgIFR5cGU6IFwiQVdTOjpMb2dzOjpMb2dHcm91cFwiLFxuICAgICAgICAgICAgICAgICAgICBEZWxldGlvblBvbGljeTogXCJSZXRhaW5cIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnd2lsbCBkZWxldGUgbG9nIGdyb3VwIGlmIGFza2VkIHRvJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIC8vIEdJVkVOXG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICAgICAgLy8gV0hFTlxuICAgICAgICBuZXcgTG9nR3JvdXAoc3RhY2ssICdMb2dHcm91cCcsIHtcbiAgICAgICAgICAgIHJldGVudGlvbkRheXM6IEluZmluaXR5LFxuICAgICAgICAgICAgcmV0YWluTG9nR3JvdXA6IGZhbHNlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFRIRU5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhtYXRjaFRlbXBsYXRlKHtcbiAgICAgICAgICAgIFJlc291cmNlczoge1xuICAgICAgICAgICAgICAgIExvZ0dyb3VwRjVCNDY5MzE6IHsgVHlwZTogXCJBV1M6OkxvZ3M6OkxvZ0dyb3VwXCIgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ2V4cG9ydC9pbXBvcnQnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgLy8gR0lWRU5cbiAgICAgICAgY29uc3Qgc3RhY2sxID0gbmV3IFN0YWNrKCk7XG4gICAgICAgIGNvbnN0IGxnID0gbmV3IExvZ0dyb3VwKHN0YWNrMSwgJ0xvZ0dyb3VwJyk7XG4gICAgICAgIGNvbnN0IHN0YWNrMiA9IG5ldyBTdGFjaygpO1xuXG4gICAgICAgIC8vIFdIRU5cbiAgICAgICAgY29uc3QgaW1wb3J0ZWQgPSBMb2dHcm91cFJlZi5pbXBvcnQoc3RhY2syLCAnSW1wb3J0JywgbGcuZXhwb3J0KCkpO1xuICAgICAgICBpbXBvcnRlZC5uZXdTdHJlYW0oc3RhY2syLCAnTWFrZU1lQVN0cmVhbScpO1xuXG4gICAgICAgIC8vIFRIRU5cbiAgICAgICAgZXhwZWN0KHN0YWNrMikudG8oaGF2ZVJlc291cmNlKCdBV1M6OkxvZ3M6OkxvZ1N0cmVhbScsIHt9KSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICdleHRyYWN0TWV0cmljJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIC8vIEdJVkVOXG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG4gICAgICAgIGNvbnN0IGxnID0gbmV3IExvZ0dyb3VwKHN0YWNrLCAnTG9nR3JvdXAnKTtcblxuICAgICAgICAvLyBXSEVOXG4gICAgICAgIGxnLmV4dHJhY3RNZXRyaWMoJyQubXlGaWVsZCcsICdNeVNlcnZpY2UnLCAnRmllbGQnKTtcblxuICAgICAgICAvLyBUSEVOXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OkxvZ3M6Ok1ldHJpY0ZpbHRlcicsIHtcbiAgICAgICAgICAgIEZpbHRlclBhdHRlcm46IFwieyAkLm15RmllbGQgPSBcXFwiKlxcXCIgfVwiLFxuICAgICAgICAgICAgTG9nR3JvdXBOYW1lOiB7IFJlZjogXCJMb2dHcm91cEY1QjQ2OTMxXCIgfSxcbiAgICAgICAgICAgIE1ldHJpY1RyYW5zZm9ybWF0aW9uczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgTWV0cmljTmFtZTogXCJGaWVsZFwiLFxuICAgICAgICAgICAgICAgIE1ldHJpY05hbWVzcGFjZTogXCJNeVNlcnZpY2VcIixcbiAgICAgICAgICAgICAgICBNZXRyaWNWYWx1ZTogXCIkLm15RmllbGRcIlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9XG5cbn07XG4iXX0=

@@ -10,2 +10,2 @@ "use strict";

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5sb2dzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5sb2dzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsdUNBQTBDO0FBRTFDLE9BQU8sR0FBRyxtQkFBUSxDQUFDO0lBQ2YsU0FBUyxDQUFDLElBQVU7UUFDaEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsMENBQTBDLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMsQ0FBQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5sb2dzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5sb2dzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsdUNBQTBDO0FBRTFDLE9BQU8sR0FBRyxtQkFBUSxDQUFDO0lBQ2YsU0FBUyxDQUFDLElBQVU7UUFDaEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsMENBQTBDLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlc3QsIHRlc3RDYXNlIH0gZnJvbSAnbm9kZXVuaXQnO1xuXG5leHBvcnRzID0gdGVzdENhc2Uoe1xuICAgIG5vdFRlc3RlZCh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIHRlc3Qub2sodHJ1ZSwgJ05vIHRlc3RzIGFyZSBzcGVjaWZpZWQgZm9yIHRoaXMgcGFja2FnZS4nKTtcbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfVxufSk7XG4iXX0=

@@ -19,2 +19,2 @@ "use strict";

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5sb2dzdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZXN0LmxvZ3N0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNENBQXVEO0FBQ3ZELHNDQUFxQztBQUVyQyxnQ0FBNkM7QUFFN0MsaUJBQVM7SUFDTCxzQkFBc0IsQ0FBQyxJQUFVO1FBQzdCLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxNQUFNLFFBQVEsR0FBRyxJQUFJLGNBQVEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFakQsSUFBSSxlQUFTLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUMzQixRQUFRO1NBQ1gsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxzQkFBc0IsRUFBRSxFQUNyRCxDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBQ0osQ0FBQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5sb2dzdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZXN0LmxvZ3N0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNENBQXVEO0FBQ3ZELHNDQUFxQztBQUVyQyxnQ0FBNkM7QUFFN0MsaUJBQVM7SUFDTCxzQkFBc0IsQ0FBQyxJQUFVO1FBQzdCLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxNQUFNLFFBQVEsR0FBRyxJQUFJLGNBQVEsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFakQsSUFBSSxlQUFTLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUMzQixRQUFRO1NBQ1gsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxzQkFBc0IsRUFBRSxFQUNyRCxDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4cGVjdCwgaGF2ZVJlc291cmNlIH0gZnJvbSAnQGF3cy1jZGsvYXNzZXJ0JztcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgeyBMb2dHcm91cCwgTG9nU3RyZWFtIH0gZnJvbSAnLi4vbGliJztcblxuZXhwb3J0ID0ge1xuICAgICdzaW1wbGUgaW5zdGFudGlhdGlvbicodGVzdDogVGVzdCkge1xuICAgICAgICAvLyBHSVZFTlxuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgICAgIC8vIFdIRU5cbiAgICAgICAgY29uc3QgbG9nR3JvdXAgPSBuZXcgTG9nR3JvdXAoc3RhY2ssICdMb2dHcm91cCcpO1xuXG4gICAgICAgIG5ldyBMb2dTdHJlYW0oc3RhY2ssICdTdHJlYW0nLCB7XG4gICAgICAgICAgICBsb2dHcm91cFxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUSEVOXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OkxvZ3M6OkxvZ1N0cmVhbScsIHtcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG59O1xuIl19

@@ -31,2 +31,2 @@ "use strict";

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5tZXRyaWNmaWx0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZXN0Lm1ldHJpY2ZpbHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNENBQXVEO0FBQ3ZELHNDQUFxQztBQUVyQyxnQ0FBK0Q7QUFFL0QsaUJBQVM7SUFDTCx1QkFBdUIsQ0FBQyxJQUFVO1FBQzlCLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBQzFCLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBUSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVqRCxPQUFPO1FBQ1AsSUFBSSxrQkFBWSxDQUFDLEtBQUssRUFBRSxjQUFjLEVBQUU7WUFDcEMsUUFBUTtZQUNSLGVBQWUsRUFBRSxVQUFVO1lBQzNCLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLFdBQVcsRUFBRSxXQUFXO1lBQ3hCLGFBQWEsRUFBRSxtQkFBYSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7U0FDbkQsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyx5QkFBeUIsRUFBRTtZQUNyRCxxQkFBcUIsRUFBRSxDQUFDO29CQUNwQixlQUFlLEVBQUUsVUFBVTtvQkFDM0IsVUFBVSxFQUFFLFNBQVM7b0JBQ3JCLFdBQVcsRUFBRSxXQUFXO2lCQUMzQixDQUFDO1lBQ0YsYUFBYSxFQUFFLHFCQUFxQjtZQUNwQyxZQUFZLEVBQUUsRUFBRSxHQUFHLEVBQUUsa0JBQWtCLEVBQUU7U0FDNUMsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5tZXRyaWNmaWx0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZXN0Lm1ldHJpY2ZpbHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNENBQXVEO0FBQ3ZELHNDQUFxQztBQUVyQyxnQ0FBK0Q7QUFFL0QsaUJBQVM7SUFDTCx1QkFBdUIsQ0FBQyxJQUFVO1FBQzlCLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBQzFCLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBUSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVqRCxPQUFPO1FBQ1AsSUFBSSxrQkFBWSxDQUFDLEtBQUssRUFBRSxjQUFjLEVBQUU7WUFDcEMsUUFBUTtZQUNSLGVBQWUsRUFBRSxVQUFVO1lBQzNCLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLFdBQVcsRUFBRSxXQUFXO1lBQ3hCLGFBQWEsRUFBRSxtQkFBYSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7U0FDbkQsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyx5QkFBeUIsRUFBRTtZQUNyRCxxQkFBcUIsRUFBRSxDQUFDO29CQUNwQixlQUFlLEVBQUUsVUFBVTtvQkFDM0IsVUFBVSxFQUFFLFNBQVM7b0JBQ3JCLFdBQVcsRUFBRSxXQUFXO2lCQUMzQixDQUFDO1lBQ0YsYUFBYSxFQUFFLHFCQUFxQjtZQUNwQyxZQUFZLEVBQUUsRUFBRSxHQUFHLEVBQUUsa0JBQWtCLEVBQUU7U0FDNUMsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleHBlY3QsIGhhdmVSZXNvdXJjZSB9IGZyb20gJ0Bhd3MtY2RrL2Fzc2VydCc7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gJ0Bhd3MtY2RrL2Nkayc7XG5pbXBvcnQgeyBUZXN0IH0gZnJvbSAnbm9kZXVuaXQnO1xuaW1wb3J0IHsgRmlsdGVyUGF0dGVybiwgTG9nR3JvdXAsIE1ldHJpY0ZpbHRlciB9IGZyb20gJy4uL2xpYic7XG5cbmV4cG9ydCA9IHtcbiAgICAndHJpdmlhbCBpbnN0YW50aWF0aW9uJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIC8vIEdJVkVOXG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG4gICAgICAgIGNvbnN0IGxvZ0dyb3VwID0gbmV3IExvZ0dyb3VwKHN0YWNrLCAnTG9nR3JvdXAnKTtcblxuICAgICAgICAvLyBXSEVOXG4gICAgICAgIG5ldyBNZXRyaWNGaWx0ZXIoc3RhY2ssICdTdWJzY3JpcHRpb24nLCB7XG4gICAgICAgICAgICBsb2dHcm91cCxcbiAgICAgICAgICAgIG1ldHJpY05hbWVzcGFjZTogJ0FXUy9UZXN0JyxcbiAgICAgICAgICAgIG1ldHJpY05hbWU6ICdMYXRlbmN5JyxcbiAgICAgICAgICAgIG1ldHJpY1ZhbHVlOiAnJC5sYXRlbmN5JyxcbiAgICAgICAgICAgIGZpbHRlclBhdHRlcm46IEZpbHRlclBhdHRlcm4uZXhpc3RzKCckLmxhdGVuY3knKVxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUSEVOXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OkxvZ3M6Ok1ldHJpY0ZpbHRlcicsIHtcbiAgICAgICAgICAgIE1ldHJpY1RyYW5zZm9ybWF0aW9uczogW3tcbiAgICAgICAgICAgICAgICBNZXRyaWNOYW1lc3BhY2U6ICdBV1MvVGVzdCcsXG4gICAgICAgICAgICAgICAgTWV0cmljTmFtZTogJ0xhdGVuY3knLFxuICAgICAgICAgICAgICAgIE1ldHJpY1ZhbHVlOiAnJC5sYXRlbmN5JyxcbiAgICAgICAgICAgIH1dLFxuICAgICAgICAgICAgRmlsdGVyUGF0dGVybjogJ3sgJC5sYXRlbmN5ID0gXCIqXCIgfScsXG4gICAgICAgICAgICBMb2dHcm91cE5hbWU6IHsgUmVmOiBcIkxvZ0dyb3VwRjVCNDY5MzFcIiB9XG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxufTtcbiJdfQ==

@@ -101,2 +101,2 @@ "use strict";

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5wYXR0ZXJuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5wYXR0ZXJuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxnQ0FBdUM7QUFFdkMsaUJBQVM7SUFDTCxlQUFlLEVBQUU7UUFDYixxQkFBcUIsQ0FBQyxJQUFVO1lBQzVCLE1BQU0sT0FBTyxHQUFHLG1CQUFhLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFNUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUUxRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELGNBQWMsQ0FBQyxJQUFVO1lBQ3JCLE1BQU0sT0FBTyxHQUFHLG1CQUFhLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRXhELElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFFNUQsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCw2QkFBNkIsQ0FBQyxJQUFVO1lBQ3BDLE1BQU0sT0FBTyxHQUFHLG1CQUFhLENBQUMsWUFBWSxDQUN0QyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsRUFDZCxDQUFDLEtBQUssQ0FBQyxDQUNWLENBQUM7WUFFRixJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBRTVELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDO1FBRUQsNENBQTRDLENBQUMsSUFBVTtZQUNuRCxNQUFNLE9BQU8sR0FBRyxtQkFBYSxDQUFDLFlBQVksQ0FDdEMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQ2pCLENBQUM7WUFFRixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxP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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5wYXR0ZXJuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5wYXR0ZXJuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxnQ0FBdUM7QUFFdkMsaUJBQVM7SUFDTCxlQUFlLEVBQUU7UUFDYixxQkFBcUIsQ0FBQyxJQUFVO1lBQzVCLE1BQU0sT0FBTyxHQUFHLG1CQUFhLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFNUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUUxRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELGNBQWMsQ0FBQyxJQUFVO1lBQ3JCLE1BQU0sT0FBTyxHQUFHLG1CQUFhLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRXhELElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFFNUQsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCw2QkFBNkIsQ0FBQyxJQUFVO1lBQ3BDLE1BQU0sT0FBTyxHQUFHLG1CQUFhLENBQUMsWUFBWSxDQUN0QyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsRUFDZCxDQUFDLEtBQUssQ0FBQyxDQUNWLENBQUM7WUFFRixJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBRTVELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDO1FBRUQsNENBQTRDLENBQUMsSUFBVTtZQUNuRCxNQUFNLE9BQU8sR0FBRyxtQkFBYSxDQUFDLFlBQVksQ0FDdEMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQ2pCLENBQUM7WUFFRixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxP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O1lBQ3hDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFO2dCQUNiLG1CQUFhLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDOUQsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztLQUNKO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgeyBGaWx0ZXJQYXR0ZXJuIH0gZnJvbSAnLi4vbGliJztcblxuZXhwb3J0ID0ge1xuICAgICd0ZXh0IHBhdHRlcm5zJzoge1xuICAgICAgICAnc2ltcGxlIHRleHQgcGF0dGVybicodGVzdDogVGVzdCkge1xuICAgICAgICAgICAgY29uc3QgcGF0dGVybiA9IEZpbHRlclBhdHRlcm4uYWxsVGVybXMoJ2ZvbycsICdiYXInLCAnYmF6Jyk7XG5cbiAgICAgICAgICAgIHRlc3QuZXF1YWwoJ1wiZm9vXCIgXCJiYXJcIiBcImJhelwiJywgcGF0dGVybi5sb2dQYXR0ZXJuU3RyaW5nKTtcblxuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgJ3F1b3RlZCB0ZXJtcycodGVzdDogVGVzdCkge1xuICAgICAgICAgICAgY29uc3QgcGF0dGVybiA9IEZpbHRlclBhdHRlcm4uYWxsVGVybXMoJ1wiZm9vXCIgaGUgc2FpZCcpO1xuXG4gICAgICAgICAgICB0ZXN0LmVxdWFsKCdcIlxcXFxcImZvb1xcXFxcIiBoZSBzYWlkXCInLCBwYXR0ZXJuLmxvZ1BhdHRlcm5TdHJpbmcpO1xuXG4gICAgICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICAgICAgfSxcblxuICAgICAgICAnZGlzanVuY3Rpb24gb2YgY29uanVuY3Rpb25zJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBwYXR0ZXJuID0gRmlsdGVyUGF0dGVybi5hbnlUZXJtR3JvdXAoXG4gICAgICAgICAgICAgICAgW1wiZm9vXCIsIFwiYmFyXCJdLFxuICAgICAgICAgICAgICAgIFtcImJhelwiXVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgdGVzdC5lcXVhbCgnP1wiZm9vXCIgXCJiYXJcIiA/XCJiYXpcIicsIHBhdHRlcm4ubG9nUGF0dGVyblN0cmluZyk7XG5cbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdkb250IHByZWZpeCB3aXRoID8gaWYgb25seSBvbmUgZGlzanVuY3Rpb24nKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhdHRlcm4gPSBGaWx0ZXJQYXR0ZXJuLmFueVRlcm1Hcm91cChcbiAgICAgICAgICAgICAgICBbXCJmb29cIiwgXCJiYXJcIl1cbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHRlc3QuZXF1YWwoJ1wiZm9vXCIgXCJiYXJcIicsIHBhdHRlcm4ubG9nUGF0dGVyblN0cmluZyk7XG5cbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdlbXB0eSBsb2cgcGF0dGVybiBpcyBlbXB0eSBzdHJpbmcnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhdHRlcm4gPSBGaWx0ZXJQYXR0ZXJuLmFueVRlcm1Hcm91cCgpO1xuXG4gICAgICAgICAgICB0ZXN0LmVxdWFsKCcnLCBwYXR0ZXJuLmxvZ1BhdHRlcm5TdHJpbmcpO1xuXG4gICAgICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICAnanNvbiBwYXR0ZXJucyc6IHtcbiAgICAgICAgJ3N0cmluZyB2YWx1ZScodGVzdDogVGVzdCkge1xuICAgICAgICAgICAgY29uc3QgcGF0dGVybiA9IEZpbHRlclBhdHRlcm4uc3RyaW5nVmFsdWUoJyQuZmllbGQnLCAnPScsICd2YWx1ZScpO1xuXG4gICAgICAgICAgICB0ZXN0LmVxdWFsKCd7ICQuZmllbGQgPSBcInZhbHVlXCIgfScsIHBhdHRlcm4ubG9nUGF0dGVyblN0cmluZyk7XG5cbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdhbHNvIHJlY29nbml6ZSA9PScodGVzdDogVGVzdCkge1xuICAgICAgICAgICAgY29uc3QgcGF0dGVybiA9IEZpbHRlclBhdHRlcm4uc3RyaW5nVmFsdWUoJyQuZmllbGQnLCAnPT0nLCAndmFsdWUnKTtcblxuICAgICAgICAgICAgdGVzdC5lcXVhbCgneyAkLmZpZWxkID0gXCJ2YWx1ZVwiIH0nLCBwYXR0ZXJuLmxvZ1BhdHRlcm5TdHJpbmcpO1xuXG4gICAgICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICAgICAgfSxcblxuICAgICAgICAnbnVtYmVyIHBhdHRlcm5zJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBwYXR0ZXJuID0gRmlsdGVyUGF0dGVybi5udW1iZXJWYWx1ZSgnJC5maWVsZCcsICc8PScsIDMwMCk7XG5cbiAgICAgICAgICAgIHRlc3QuZXF1YWwoJ3sgJC5maWVsZCA8PSAzMDAgfScsIHBhdHRlcm4ubG9nUGF0dGVyblN0cmluZyk7XG5cbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdjb21iaW5pbmcgd2l0aCBBTkQgb3IgT1InKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IHAxID0gRmlsdGVyUGF0dGVybi5udW1iZXJWYWx1ZSgnJC5maWVsZCcsICc8PScsIDMwMCk7XG4gICAgICAgICAgICBjb25zdCBwMiA9IEZpbHRlclBhdHRlcm4uc3RyaW5nVmFsdWUoJyQuZmllbGQnLCAnPScsICd2YWx1ZScpO1xuXG4gICAgICAgICAgICBjb25zdCBhbmRQYXR0ZXJuID0gRmlsdGVyUGF0dGVybi5hbGwocDEsIHAyKTtcbiAgICAgICAgICAgIHRlc3QuZXF1YWwoJ3sgKCQuZmllbGQgPD0gMzAwKSAmJiAoJC5maWVsZCA9IFwidmFsdWVcIikgfScsIGFuZFBhdHRlcm4ubG9nUGF0dGVyblN0cmluZyk7XG5cbiAgICAgICAgICAgIGNvbnN0IG9yUGF0dGVybiA9IEZpbHRlclBhdHRlcm4uYW55KHAxLCBwMik7XG4gICAgICAgICAgICB0ZXN0LmVxdWFsKCd7ICgkLmZpZWxkIDw9IDMwMCkgfHwgKCQuZmllbGQgPSBcInZhbHVlXCIpIH0nLCBvclBhdHRlcm4ubG9nUGF0dGVyblN0cmluZyk7XG5cbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdzaW5nbGUgQU5EIGlzIG5vdCB3cmFwcGVkIHdpdGggcGFyZW5zJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBwMSA9IEZpbHRlclBhdHRlcm4uc3RyaW5nVmFsdWUoJyQuZmllbGQnLCAnPScsICd2YWx1ZScpO1xuXG4gICAgICAgICAgICBjb25zdCBwYXR0ZXJuID0gRmlsdGVyUGF0dGVybi5hbGwocDEpO1xuXG4gICAgICAgICAgICB0ZXN0LmVxdWFsKCd7ICQuZmllbGQgPSBcInZhbHVlXCIgfScsIHBhdHRlcm4ubG9nUGF0dGVyblN0cmluZyk7XG5cbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdlbXB0eSBBTkQgaXMgcmVqZWN0ZWQnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgICAgICAgICAgICBGaWx0ZXJQYXR0ZXJuLmFsbCgpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdpbnZhbGlkIHN0cmluZyBvcGVyYXRvcnMgYXJlIHJlamVjdGVkJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICAgICAgICAgICAgRmlsdGVyUGF0dGVybi5zdHJpbmdWYWx1ZSgnJC5maWVsZCcsICc8PScsICdoZWxsbycpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdjYW4gdGVzdCBib29sZWFuIHZhbHVlJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBwYXR0ZXJuID0gRmlsdGVyUGF0dGVybi5ib29sZWFuVmFsdWUoJyQuZmllbGQnLCBmYWxzZSk7XG5cbiAgICAgICAgICAgIHRlc3QuZXF1YWwoJ3sgJC5maWVsZCBJUyBGQUxTRSB9JywgcGF0dGVybi5sb2dQYXR0ZXJuU3RyaW5nKTtcblxuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG4gICAgfSxcblxuICAgICd0YWJsZSBwYXR0ZXJucyc6IHtcbiAgICAgICAgJ3NpbXBsZSBtb2RlbCcodGVzdDogVGVzdCkge1xuICAgICAgICAgICAgY29uc3QgcGF0dGVybiA9IEZpbHRlclBhdHRlcm4uc3BhY2VEZWxpbWl0ZWQoJy4uLicsICdzdGF0dXNfY29kZScsICdieXRlcycpO1xuXG4gICAgICAgICAgICB0ZXN0LmVxdWFsKCdbLi4uLCBzdGF0dXNfY29kZSwgYnl0ZXNdJywgcGF0dGVybi5sb2dQYXR0ZXJuU3RyaW5nKTtcblxuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgJ2FkZCByZXN0cmljdGlvbnMnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhdHRlcm4gPSBGaWx0ZXJQYXR0ZXJuLnNwYWNlRGVsaW1pdGVkKCcuLi4nLCAnc3RhdHVzX2NvZGUnLCAnYnl0ZXMnKVxuICAgICAgICAgICAgICAgIC53aGVyZVN0cmluZygnc3RhdHVzX2NvZGUnLCAnPScsICc0KicpXG4gICAgICAgICAgICAgICAgLndoZXJlTnVtYmVyKCdzdGF0dXNfY29kZScsICchPScsIDQwMyk7XG5cbiAgICAgICAgICAgIHRlc3QuZXF1YWwoJ1suLi4sIHN0YXR1c19jb2RlID0gXCI0KlwiICYmIHN0YXR1c19jb2RlICE9IDQwMywgYnl0ZXNdJywgcGF0dGVybi5sb2dQYXR0ZXJuU3RyaW5nKTtcblxuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgJ2NhbnQgdXNlIG1vcmUgdGhhbiBvbmUgZWxsaXBzaXMnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIHRlc3QudGhyb3dzKCgpID0+IHtcbiAgICAgICAgICAgICAgICBGaWx0ZXJQYXR0ZXJuLnNwYWNlRGVsaW1pdGVkKCcuLi4nLCAnc3RhdHVzX2NvZGUnLCAnLi4uJyk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH1cbiAgICB9XG59OyJdfQ==

@@ -32,2 +32,2 @@ "use strict";

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5zdWJzY3JpcHRpb25maWx0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZXN0LnN1YnNjcmlwdGlvbmZpbHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNENBQXVEO0FBQ3ZELHNDQUEwQztBQUUxQyxnQ0FBa0c7QUEwQmxHLE1BQU0sZUFBZTtJQUNWLDBCQUEwQixDQUFDLGVBQXlCO1FBQ3ZELE9BQU87WUFDSCxHQUFHLEVBQUUsSUFBSSxTQUFHLENBQUMsV0FBVyxDQUFDO1NBQzVCLENBQUM7SUFDTixDQUFDO0NBQ0o7QUE5QkQsaUJBQVM7SUFDTCx1QkFBdUIsQ0FBQyxJQUFVO1FBQzlCLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBQzFCLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBUSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVqRCxPQUFPO1FBQ1AsSUFBSSx3QkFBa0IsQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFO1lBQzFDLFFBQVE7WUFDUixXQUFXLEVBQUUsSUFBSSxlQUFlLEVBQUU7WUFDbEMsYUFBYSxFQUFFLG1CQUFhLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQztTQUN2RCxDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLCtCQUErQixFQUFFO1lBQzNELGNBQWMsRUFBRSxXQUFXO1lBQzNCLGFBQWEsRUFBRSxjQUFjO1lBQzdCLFlBQVksRUFBRSxFQUFFLEdBQUcsRUFBRSxrQkFBa0IsRUFBRTtTQUM1QyxDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBQ0osQ0FBQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5zdWJzY3JpcHRpb25maWx0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZXN0LnN1YnNjcmlwdGlvbmZpbHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNENBQXVEO0FBQ3ZELHNDQUEwQztBQUUxQyxnQ0FBK0c7QUEwQi9HLE1BQU0sZUFBZTtJQUNWLDBCQUEwQixDQUFDLGVBQTRCO1FBQzFELE9BQU87WUFDSCxHQUFHLEVBQUUsSUFBSSxTQUFHLENBQUMsV0FBVyxDQUFDO1NBQzVCLENBQUM7SUFDTixDQUFDO0NBQ0o7QUE5QkQsaUJBQVM7SUFDTCx1QkFBdUIsQ0FBQyxJQUFVO1FBQzlCLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBQzFCLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBUSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVqRCxPQUFPO1FBQ1AsSUFBSSx3QkFBa0IsQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFO1lBQzFDLFFBQVE7WUFDUixXQUFXLEVBQUUsSUFBSSxlQUFlLEVBQUU7WUFDbEMsYUFBYSxFQUFFLG1CQUFhLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQztTQUN2RCxDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLCtCQUErQixFQUFFO1lBQzNELGNBQWMsRUFBRSxXQUFXO1lBQzNCLGFBQWEsRUFBRSxjQUFjO1lBQzdCLFlBQVksRUFBRSxFQUFFLEdBQUcsRUFBRSxrQkFBa0IsRUFBRTtTQUM1QyxDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4cGVjdCwgaGF2ZVJlc291cmNlIH0gZnJvbSAnQGF3cy1jZGsvYXNzZXJ0JztcbmltcG9ydCB7IEFybiwgU3RhY2sgfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgVGVzdCB9IGZyb20gJ25vZGV1bml0JztcbmltcG9ydCB7IEZpbHRlclBhdHRlcm4sIElMb2dTdWJzY3JpcHRpb25EZXN0aW5hdGlvbiwgTG9nR3JvdXAsIExvZ0dyb3VwUmVmLCBTdWJzY3JpcHRpb25GaWx0ZXIgfSBmcm9tICcuLi9saWInO1xuXG5leHBvcnQgPSB7XG4gICAgJ3RyaXZpYWwgaW5zdGFudGlhdGlvbicodGVzdDogVGVzdCkge1xuICAgICAgICAvLyBHSVZFTlxuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuICAgICAgICBjb25zdCBsb2dHcm91cCA9IG5ldyBMb2dHcm91cChzdGFjaywgJ0xvZ0dyb3VwJyk7XG5cbiAgICAgICAgLy8gV0hFTlxuICAgICAgICBuZXcgU3Vic2NyaXB0aW9uRmlsdGVyKHN0YWNrLCAnU3Vic2NyaXB0aW9uJywge1xuICAgICAgICAgICAgbG9nR3JvdXAsXG4gICAgICAgICAgICBkZXN0aW5hdGlvbjogbmV3IEZha2VEZXN0aW5hdGlvbigpLFxuICAgICAgICAgICAgZmlsdGVyUGF0dGVybjogRmlsdGVyUGF0dGVybi5saXRlcmFsKFwic29tZSBwYXR0ZXJuXCIpXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFRIRU5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6TG9nczo6U3Vic2NyaXB0aW9uRmlsdGVyJywge1xuICAgICAgICAgICAgRGVzdGluYXRpb25Bcm46IFwiYXJuOmJvZ3VzXCIsXG4gICAgICAgICAgICBGaWx0ZXJQYXR0ZXJuOiBcInNvbWUgcGF0dGVyblwiLFxuICAgICAgICAgICAgTG9nR3JvdXBOYW1lOiB7IFJlZjogXCJMb2dHcm91cEY1QjQ2OTMxXCIgfVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcbn07XG5cbmNsYXNzIEZha2VEZXN0aW5hdGlvbiBpbXBsZW1lbnRzIElMb2dTdWJzY3JpcHRpb25EZXN0aW5hdGlvbiB7XG4gICAgcHVibGljIGxvZ1N1YnNjcmlwdGlvbkRlc3RpbmF0aW9uKF9zb3VyY2VMb2dHcm91cDogTG9nR3JvdXBSZWYpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGFybjogbmV3IEFybignYXJuOmJvZ3VzJyksXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
{
"compilerOptions": {
"target": "es2018",
"lib": [
"es2016",
"es2017.object",
"es2017.string"
],
"module": "commonjs",
"declaration": true,
"strict": true,
"strictPropertyInitialization": true,
"noImplicitAny": true,
"strictNullChecks": true,
"noImplicitThis": true,
"alwaysStrict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true,
"inlineSourceMap": true,
"experimentalDecorators": true,
"jsx": "react",
"jsxFactory": "jsx.create"
},
"_generated_by_jsii_": "generated by jsii - you can delete, and ideally add to your .gitignore"
"compilerOptions": {
"alwaysStrict": true,
"charset": "utf8",
"declaration": true,
"experimentalDecorators": true,
"inlineSourceMap": true,
"inlineSources": true,
"jsx": "react",
"jsxFactory": "jsx.create",
"lib": [
"es2016",
"es2017.object",
"es2017.string"
],
"module": "CommonJS",
"noEmitOnError": true,
"noFallthroughCasesInSwitch": true,
"noImplicitAny": true,
"noImplicitReturns": true,
"noImplicitThis": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"resolveJsonModule": true,
"strict": true,
"strictNullChecks": true,
"target": "ES2018"
},
"_generated_by_jsii_": "Generated by jsii - safe to delete, and ideally should be in .gitignore"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc