Socket
Socket
Sign inDemoInstall

@aws-cdk/aws-s3

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-s3 - npm Package Compare versions

Comparing version 0.8.2 to 0.9.0

key.snk

2

lib/bucket-policy.js

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

exports.BucketPolicy = BucketPolicy;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVja2V0LXBvbGljeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1Y2tldC1wb2xpY3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBeUQ7QUFFekQsaURBQWdEO0FBU2hEOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsZUFBUztJQVN2QyxZQUFZLE1BQWlCLEVBQUUsSUFBWSxFQUFFLEtBQXdCO1FBQ2pFLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFSeEI7Ozs7V0FJRztRQUNhLGFBQVEsR0FBRyxJQUFJLG9CQUFjLEVBQUUsQ0FBQztRQUs1QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUU7WUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO1NBQ2hFO1FBRUQsSUFBSSw2QkFBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDdEQsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVTtZQUMvQixjQUFjLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDaEMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKO0FBckJELG9DQXFCQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVja2V0LXBvbGljeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1Y2tldC1wb2xpY3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBeUQ7QUFFekQsaURBQWdEO0FBU2hEOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsZUFBUztJQVN2QyxZQUFZLE1BQWlCLEVBQUUsSUFBWSxFQUFFLEtBQXdCO1FBQ2pFLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFSeEI7Ozs7V0FJRztRQUNhLGFBQVEsR0FBRyxJQUFJLG9CQUFjLEVBQUUsQ0FBQztRQUs1QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUU7WUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO1NBQ2hFO1FBRUQsSUFBSSw2QkFBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDdEQsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVTtZQUMvQixjQUFjLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDaEMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKO0FBckJELG9DQXFCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCwgUG9saWN5RG9jdW1lbnQgfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgQnVja2V0UmVmIH0gZnJvbSAnLi9idWNrZXQnO1xuaW1wb3J0IHsgY2xvdWRmb3JtYXRpb24gfSBmcm9tICcuL3MzLmdlbmVyYXRlZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVja2V0UG9saWN5UHJvcHMge1xuICAgIC8qKlxuICAgICAqIFRoZSBBbWF6b24gUzMgYnVja2V0IHRoYXQgdGhlIHBvbGljeSBhcHBsaWVzIHRvLlxuICAgICAqL1xuICAgIGJ1Y2tldDogQnVja2V0UmVmO1xufVxuXG4vKipcbiAqIEFwcGxpZXMgYW4gQW1hem9uIFMzIGJ1Y2tldCBwb2xpY3kgdG8gYW4gQW1hem9uIFMzIGJ1Y2tldC5cbiAqL1xuZXhwb3J0IGNsYXNzIEJ1Y2tldFBvbGljeSBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgICAvKipcbiAgICAgKiBBIHBvbGljeSBkb2N1bWVudCBjb250YWluaW5nIHBlcm1pc3Npb25zIHRvIGFkZCB0byB0aGUgc3BlY2lmaWVkIGJ1Y2tldC5cbiAgICAgKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIEFjY2VzcyBQb2xpY3kgTGFuZ3VhZ2UgT3ZlcnZpZXcgaW4gdGhlIEFtYXpvblxuICAgICAqIFNpbXBsZSBTdG9yYWdlIFNlcnZpY2UgRGV2ZWxvcGVyIEd1aWRlLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBkb2N1bWVudCA9IG5ldyBQb2xpY3lEb2N1bWVudCgpO1xuXG4gICAgY29uc3RydWN0b3IocGFyZW50OiBDb25zdHJ1Y3QsIG5hbWU6IHN0cmluZywgcHJvcHM6IEJ1Y2tldFBvbGljeVByb3BzKSB7XG4gICAgICAgIHN1cGVyKHBhcmVudCwgbmFtZSk7XG5cbiAgICAgICAgaWYgKCFwcm9wcy5idWNrZXQuYnVja2V0TmFtZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdCdWNrZXQgZG9lc25cXCd0IGhhdmUgYSBidWNrZXROYW1lIGRlZmluZWQnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG5ldyBjbG91ZGZvcm1hdGlvbi5CdWNrZXRQb2xpY3lSZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICAgICAgICBidWNrZXQ6IHByb3BzLmJ1Y2tldC5idWNrZXROYW1lLFxuICAgICAgICAgICAgcG9saWN5RG9jdW1lbnQ6IHRoaXMuZG9jdW1lbnQsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==

@@ -0,1 +1,2 @@

import actions = require('@aws-cdk/aws-codepipeline-api');
import iam = require('@aws-cdk/aws-iam');

@@ -6,4 +7,5 @@ import kms = require('@aws-cdk/aws-kms');

import { BucketPolicy } from './bucket-policy';
import { CommonPipelineSourceProps, PipelineSource } from './pipeline-action';
import { LifecycleRule } from './rule';
import { BucketArn, BucketDomainName, BucketDualStackDomainName } from './s3.generated';
import { BucketArn, BucketDomainName, BucketDualStackDomainName, BucketName } from './s3.generated';
/**

@@ -84,2 +86,12 @@ * A reference to a bucket. The easiest way to instantiate is to call

/**
* Convenience method for creating a new {@link PipelineSource} Action,
* and adding it to the given Stage.
*
* @param stage the Pipeline Stage to add the new Action to
* @param name the name of the newly created Action
* @param props the properties of the new Action
* @returns the newly created {@link PipelineSource} Action
*/
addToPipeline(stage: actions.IStage, name: string, props: CommonPipelineSourceProps): PipelineSource;
/**
* Adds a statement to the resource policy for a principal (i.e.

@@ -118,10 +130,40 @@ * account/role/service) to perform actions on this bucket and/or it's

/**
* Temporary API for granting read permissions for this bucket and it's
* contents to an IAM principal (Role/Group/User).
* Grant read permissions for this bucket and it's contents to an IAM
* principal (Role/Group/User).
*
* If an encryption key is used, permission to ues the key to decrypt the
* contents of the bucket will also be granted.
* If encryption is used, permission to use the key to decrypt the contents
* of the bucket will also be granted to the same principal.
*
* @param identity The principal
* @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*')
*/
grantRead(identity?: iam.IPrincipal, objectsKeyPattern?: any): void;
/**
* Grant write permissions to this bucket to an IAM principal.
*
* If encryption is used, permission to use the key to encrypt the contents
* of written files will also be granted to the same principal.
*
* @param identity The principal
* @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*')
*/
grantWrite(identity?: iam.IPrincipal, objectsKeyPattern?: any): void;
/**
* Grants s3:PutObject* and s3:Abort* permissions for this bucket to an IAM principal.
*
* If encryption is used, permission to use the key to encrypt the contents
* of written files will also be granted to the same principal.
* @param identity The principal
* @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*')
*/
grantPut(identity?: iam.IPrincipal, objectsKeyPattern?: any): void;
/**
* Grants s3:DeleteObject* permission to an IAM pricipal for objects
* in this bucket.
*
* @param identity The principal
* @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*')
*/
grantDelete(identity?: iam.IPrincipal, objectsKeyPattern?: any): void;
/**
* Grants read/write permissions for this bucket and it's contents to an IAM

@@ -132,2 +174,5 @@ * principal (Role/Group/User).

* encrypt/decrypt will also be granted.
*
* @param identity The principal
* @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*')
*/

@@ -286,7 +331,2 @@ grantReadWrite(identity?: iam.IPrincipal, objectsKeyPattern?: any): void;

/**
* The name of the bucket.
*/
export declare class BucketName extends cdk.Token {
}
/**
* A key to an S3 object.

@@ -293,0 +333,0 @@ */

export * from './bucket';
export * from './bucket-policy';
export * from './pipeline-action';
export * from './rule';
export * from './s3.generated';

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

__export(require("./bucket-policy"));
__export(require("./pipeline-action"));
__export(require("./rule"));
// AWS::S3 CloudFormation Resources:
__export(require("./s3.generated"));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDhCQUF5QjtBQUN6QixxQ0FBZ0M7QUFDaEMsNEJBQXVCO0FBRXZCLG9DQUFvQztBQUNwQyxvQ0FBK0IifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDhCQUF5QjtBQUN6QixxQ0FBZ0M7QUFDaEMsdUNBQWtDO0FBQ2xDLDRCQUF1QjtBQUV2QixvQ0FBb0M7QUFDcEMsb0NBQStCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9idWNrZXQnO1xuZXhwb3J0ICogZnJvbSAnLi9idWNrZXQtcG9saWN5JztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZWxpbmUtYWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcnVsZSc7XG5cbi8vIEFXUzo6UzMgQ2xvdWRGb3JtYXRpb24gUmVzb3VyY2VzOlxuZXhwb3J0ICogZnJvbSAnLi9zMy5nZW5lcmF0ZWQnO1xuIl19

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

__export(require("./notifications-resource"));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDhDQUF5QyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDhDQUF5QyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9ucy1yZXNvdXJjZSc7Il19

@@ -56,3 +56,3 @@ "use strict";

.addAction('s3:PutBucketNotification')
.addResource('*'));
.addAllResources());
const resource = new cdk.Resource(this, 'Resource', {

@@ -69,3 +69,3 @@ type: 'AWS::Lambda::Function',

});
this.functionArn = resource.getAtt('Arn');
this.functionArn = new cdk.Arn(resource.getAtt('Arn'));
}

@@ -144,2 +144,2 @@ }

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1yZXNvdXJjZS1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm90aWZpY2F0aW9ucy1yZXNvdXJjZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBQ3pDLG9DQUFxQztBQUVyQzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQWEsNEJBQTZCLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFDM0Q7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQXNCO1FBQzFDLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXJDLHFEQUFxRDtRQUNyRCxNQUFNLFNBQVMsR0FBRyw0REFBNEQsQ0FBQztRQUMvRSxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBaUMsQ0FBQztRQUMxRSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsTUFBTSxHQUFHLElBQUksNEJBQTRCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQzlEO1FBRUQsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDO0lBQzlCLENBQUM7SUFRRCxZQUFZLE1BQXFCLEVBQUUsRUFBVTtRQUN6QyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQ3BDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQztZQUMzRCxpQkFBaUIsRUFBRTtnQkFDZixHQUFHLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQztvQkFDbkIsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsTUFBTSxFQUFFLEVBQUU7b0JBQ1YsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsUUFBUSxFQUFF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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1yZXNvdXJjZS1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm90aWZpY2F0aW9ucy1yZXNvdXJjZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBQ3pDLG9DQUFxQztBQUVyQzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQWEsNEJBQTZCLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFDM0Q7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQXNCO1FBQzFDLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXJDLHFEQUFxRDtRQUNyRCxNQUFNLFNBQVMsR0FBRyw0REFBNEQsQ0FBQztRQUMvRSxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBaUMsQ0FBQztRQUMxRSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsTUFBTSxHQUFHLElBQUksNEJBQTRCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQzlEO1FBRUQsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDO0lBQzlCLENBQUM7SUFRRCxZQUFZLE1BQXFCLEVBQUUsRUFBVTtRQUN6QyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQ3BDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQztZQUMzRCxpQkFBaUIsRUFBRTtnQkFDZixHQUFHLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQztvQkFDbkIsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsTUFBTSxFQUFFLEVBQUU7b0JBQ1YsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsUUFBUSxFQUFF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QixPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDbEIsQ0FBQztBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5cbi8qKlxuICogQSBMYW1iZGEtYmFzZWQgY3VzdG9tIHJlc291cmNlIGhhbmRsZXIgdGhhdCBwcm92aXNpb25zIFMzIGJ1Y2tldFxuICogbm90aWZpY2F0aW9ucyBmb3IgYSBidWNrZXQuXG4gKlxuICogVGhlIHJlc291cmNlIHByb3BlcnR5IHNjaGVtYSBpczpcbiAqXG4gKiB7XG4gKiAgIEJ1Y2tldE5hbWU6IHN0cmluZywgTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbjogeyBzZWVcbiAqICAgUHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiB9XG4gKiB9XG4gKlxuICogRm9yICdEZWxldGUnIG9wZXJhdGlvbnMsIHdlIHNlbmQgYW4gZW1wdHkgTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiBhc1xuICogcmVxdWlyZWQuIFdlIHByb3BhZ2F0ZSBlcnJvcnMgYW5kIHJlc3VsdHMgYXMtaXMuXG4gKlxuICogU2FkbHksIHdlIGNhbid0IHVzZSBAYXdzLWNkay9hd3MtbGFtYmRhIGFzIGl0IHdpbGwgaW50cm9kdWNlIGEgZGVwZW5kZW5jeVxuICogY3ljbGUsIHNvIHRoaXMgdXNlcyByYXcgYGNkay5SZXNvdXJjZWBzLlxuICovXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uc1Jlc291cmNlSGFuZGxlciBleHRlbmRzIGNkay5Db25zdHJ1Y3Qge1xuICAgIC8qKlxuICAgICAqIERlZmluZXMgYSBzdGFjay1zaW5nbGV0b24gbGFtYmRhIGZ1bmN0aW9uIHdpdGggdGhlIGxvZ2ljIGZvciBhIENsb3VkRm9ybWF0aW9uIGN1c3RvbVxuICAgICAqIHJlc291cmNlIHRoYXQgcHJvdmlzaW9ucyBidWNrZXQgbm90aWZpY2F0aW9uIGNvbmZpZ3VyYXRpb24gZm9yIGEgYnVja2V0LlxuICAgICAqXG4gICAgICogQHJldHVybnMgVGhlIEFSTiBvZiB0aGUgY3VzdG9tIHJlc291cmNlIGxhbWJkYSBmdW5jdGlvbi5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHNpbmdsZXRvbihjb250ZXh0OiBjZGsuQ29uc3RydWN0KSB7XG4gICAgICAgIGNvbnN0IHJvb3QgPSBjZGsuU3RhY2suZmluZChjb250ZXh0KTtcblxuICAgICAgICAvLyB3ZWxsLWtub3duIGxvZ2ljYWwgaWQgdG8gZW5zdXJlIHN0YWNrIHNpbmdsZXRvbml0eVxuICAgICAgICBjb25zdCBsb2dpY2FsSWQgPSAnQnVja2V0Tm90aWZpY2F0aW9uc0hhbmRsZXIwNTBhMDU4N2I3NTQ0NTQ3YmYzMjVmMDk0YTNkYjgzNCc7XG4gICAgICAgIGxldCBsYW1iZGEgPSByb290LnRyeUZpbmRDaGlsZChsb2dpY2FsSWQpIGFzIE5vdGlmaWNhdGlvbnNSZXNvdXJjZUhhbmRsZXI7XG4gICAgICAgIGlmICghbGFtYmRhKSB7XG4gICAgICAgICAgICBsYW1iZGEgPSBuZXcgTm90aWZpY2F0aW9uc1Jlc291cmNlSGFuZGxlcihyb290LCBsb2dpY2FsSWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGxhbWJkYS5mdW5jdGlvbkFybjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgQVJOIG9mIHRoZSBoYW5kbGVyJ3MgbGFtYmRhIGZ1bmN0aW9uLiBVc2VkIGFzIGEgc2VydmljZSB0b2tlbiBpbiB0aGVcbiAgICAgKiBjdXN0b20gcmVzb3VyY2UuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGZ1bmN0aW9uQXJuOiBjZGsuQXJuO1xuXG4gICAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHBhcmVudCwgaWQpO1xuXG4gICAgICAgIGNvbnN0IHJvbGUgPSBuZXcgaWFtLlJvbGUodGhpcywgJ1JvbGUnLCB7XG4gICAgICAgICAgICBhc3N1bWVkQnk6IG5ldyBjZGsuU2VydmljZVByaW5jaXBhbCgnbGFtYmRhLmFtYXpvbmF3cy5jb20nKSxcbiAgICAgICAgICAgIG1hbmFnZWRQb2xpY3lBcm5zOiBbXG4gICAgICAgICAgICAgICAgY2RrLkFybi5mcm9tQ29tcG9uZW50cyh7XG4gICAgICAgICAgICAgICAgICAgIHNlcnZpY2U6ICdpYW0nLFxuICAgICAgICAgICAgICAgICAgICByZWdpb246ICcnLCAvLyBubyByZWdpb24gZm9yIG1hbmFnZWQgcG9saWN5XG4gICAgICAgICAgICAgICAgICAgIGFjY291bnQ6ICdhd3MnLCAvLyB0aGUgYWNjb3VudCBmb3IgYSBtYW5hZ2VkIHBvbGljeSBpcyAnYXdzJ1xuICAgICAgICAgICAgICAgICAgICByZXNvdXJjZTogJ3BvbGljeScsXG4gICAgICAgICAgICAgICAgICAgIHJlc291cmNlTmFtZTogJ3NlcnZpY2Utcm9sZS9BV1NMYW1iZGFCYXNpY0V4ZWN1dGlvblJvbGUnLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBdXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIGhhbmRsZXIgYWxsb3dzIHRvIHB1dCBidWNrZXQgbm90aWZpY2F0aW9uIG9uIHMzIGJ1Y2tldHMuXG4gICAgICAgIHJvbGUuYWRkVG9Qb2xpY3kobmV3IGNkay5Qb2xpY3lTdGF0ZW1lbnQoKVxuICAgICAgICAgICAgLmFkZEFjdGlvbignczM6UHV0QnVja2V0Tm90aWZpY2F0aW9uJylcbiAgICAgICAgICAgIC5hZGRBbGxSZXNvdXJjZXMoKSk7XG5cbiAgICAgICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgY2RrLlJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgICAgICAgIHR5cGU6ICdBV1M6OkxhbWJkYTo6RnVuY3Rpb24nLFxuICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgIERlc2NyaXB0aW9uOiAnQVdTIENsb3VkRm9ybWF0aW9uIGhhbmRsZXIgZm9yIFwiQ3VzdG9tOjpTM0J1Y2tldE5vdGlmaWNhdGlvbnNcIiByZXNvdXJjZXMgKEBhd3MtY2RrL2F3cy1zMyknLFxuICAgICAgICAgICAgICAgIENvZGU6IHsgWmlwRmlsZTogYGV4cG9ydHMuaGFuZGxlciA9ICR7aGFuZGxlci50b1N0cmluZygpfTtgIH0sXG4gICAgICAgICAgICAgICAgSGFuZGxlcjogJ2luZGV4LmhhbmRsZXInLFxuICAgICAgICAgICAgICAgIFJvbGU6IHJvbGUucm9sZUFybixcbiAgICAgICAgICAgICAgICBSdW50aW1lOiAnbm9kZWpzOC4xMCcsXG4gICAgICAgICAgICAgICAgVGltZW91dDogMzAwLFxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmZ1bmN0aW9uQXJuID0gbmV3IGNkay5Bcm4ocmVzb3VyY2UuZ2V0QXR0KCdBcm4nKSk7XG4gICAgfVxufVxuXG4vLyB0c2xpbnQ6ZGlzYWJsZTpuby1jb25zb2xlXG5cbi8qKlxuICogTGFtYmRhIGV2ZW50IGhhbmRsZXIgZm9yIHRoZSBjdXN0b20gcmVzb3VyY2UuIEJlYXIgaW4gbWluZCB0aGF0IHdlIGFyZSBnb2luZ1xuICogdG8gLnRvU3RyaW5nKCkgdGhpcyBmdW5jdGlvbiBhbmQgaW5saW5lIGl0IGFzIExhbWJkYSBjb2RlLlxuICpcbiAqIFRoZSBmdW5jdGlvbiB3aWxsIGlzc3VlIGEgcHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiByZXF1ZXN0IGZvciB0aGVcbiAqIHNwZWNpZmllZCBidWNrZXQuXG4gKi9cbmNvbnN0IGhhbmRsZXIgPSAoZXZlbnQ6IGFueSwgY29udGV4dDogYW55KSA9PiB7XG4gICAgY29uc3QgczMgPSBuZXcgKHJlcXVpcmUoJ2F3cy1zZGsnKS5TMykoKTtcbiAgICBjb25zdCBodHRwcyA9IHJlcXVpcmUoXCJodHRwc1wiKTtcbiAgICBjb25zdCB1cmwgPSByZXF1aXJlKFwidXJsXCIpO1xuXG4gICAgbG9nKEpTT04uc3RyaW5naWZ5KGV2ZW50LCB1bmRlZmluZWQsIDIpKTtcblxuICAgIGNvbnN0IHByb3BzID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzO1xuXG4gICAgaWYgKGV2ZW50LlJlcXVlc3RUeXBlID09PSAnRGVsZXRlJykge1xuICAgICAgICBwcm9wcy5Ob3RpZmljYXRpb25Db25maWd1cmF0aW9uID0geyB9OyAvLyB0aGlzIGlzIGhvdyB5b3UgY2xlYW4gb3V0IG5vdGlmaWNhdGlvbnNcbiAgICB9XG5cbiAgICBjb25zdCByZXEgPSB7XG4gICAgICAgIEJ1Y2tldDogcHJvcHMuQnVja2V0TmFtZSxcbiAgICAgICAgTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbjogcHJvcHMuTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvblxuICAgIH07XG5cbiAgICByZXR1cm4gczMucHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbihyZXEsIChlcnI6IGFueSwgZGF0YTogYW55KSA9PiB7XG4gICAgICAgIGxvZyh7IGVyciwgZGF0YSB9KTtcbiAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgICAgcmV0dXJuIHN1Ym1pdFJlc3BvbnNlKFwiRkFJTEVEXCIsIGVyci5tZXNzYWdlICsgYFxcbk1vcmUgaW5mb3JtYXRpb24gaW4gQ2xvdWRXYXRjaCBMb2cgU3RyZWFtOiAke2NvbnRleHQubG9nU3RyZWFtTmFtZX1gKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBzdWJtaXRSZXNwb25zZShcIlNVQ0NFU1NcIik7XG4gICAgICAgIH1cbiAgICB9KTtcblxuICAgIGZ1bmN0aW9uIGxvZyhvYmo6IGFueSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGV2ZW50LlJlcXVlc3RJZCwgZXZlbnQuU3RhY2tJZCwgZXZlbnQuTG9naWNhbFJlc291cmNlSWQsIG9iaik7XG4gICAgfVxuXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm1heC1saW5lLWxlbmd0aFxuICAgIC8vIGFkYXB0ZWQgZnJvbSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQVdTQ2xvdWRGb3JtYXRpb24vbGF0ZXN0L1VzZXJHdWlkZS9hd3MtcHJvcGVydGllcy1sYW1iZGEtZnVuY3Rpb24tY29kZS5odG1sI2Nmbi1sYW1iZGEtZnVuY3Rpb24tY29kZS1jZm5yZXNwb25zZW1vZHVsZVxuICAgIC8vIHRvIGFsbG93IHNlbmRpbmcgYW4gZXJyb3IgbWVzc2dlIGFzIGEgcmVhc29uLlxuICAgIGZ1bmN0aW9uIHN1Ym1pdFJlc3BvbnNlKHJlc3BvbnNlU3RhdHVzOiBzdHJpbmcsIHJlYXNvbj86IHN0cmluZykge1xuICAgICAgICBjb25zdCByZXNwb25zZUJvZHkgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICBTdGF0dXM6IHJlc3BvbnNlU3RhdHVzLFxuICAgICAgICAgICAgUmVhc29uOiByZWFzb24gfHwgXCJTZWUgdGhlIGRldGFpbHMgaW4gQ2xvdWRXYXRjaCBMb2cgU3RyZWFtOiBcIiArIGNvbnRleHQubG9nU3RyZWFtTmFtZSxcbiAgICAgICAgICAgIFBoeXNpY2FsUmVzb3VyY2VJZDogY29udGV4dC5sb2dTdHJlYW1OYW1lLFxuICAgICAgICAgICAgU3RhY2tJZDogZXZlbnQuU3RhY2tJZCxcbiAgICAgICAgICAgIFJlcXVlc3RJZDogZXZlbnQuUmVxdWVzdElkLFxuICAgICAgICAgICAgTG9naWNhbFJlc291cmNlSWQ6IGV2ZW50LkxvZ2ljYWxSZXNvdXJjZUlkLFxuICAgICAgICAgICAgTm9FY2hvOiBmYWxzZSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgbG9nKHsgcmVzcG9uc2VCb2R5IH0pO1xuXG4gICAgICAgIGNvbnN0IHBhcnNlZFVybCA9IHVybC5wYXJzZShldmVudC5SZXNwb25zZVVSTCk7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAgICAgICBob3N0bmFtZTogcGFyc2VkVXJsLmhvc3RuYW1lLFxuICAgICAgICAgICAgcG9ydDogNDQzLFxuICAgICAgICAgICAgcGF0aDogcGFyc2VkVXJsLnBhdGgsXG4gICAgICAgICAgICBtZXRob2Q6IFwiUFVUXCIsXG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgXCJjb250ZW50LXR5cGVcIjogXCJcIixcbiAgICAgICAgICAgICAgICBcImNvbnRlbnQtbGVuZ3RoXCI6IHJlc3BvbnNlQm9keS5sZW5ndGhcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCByZXF1ZXN0ID0gaHR0cHMucmVxdWVzdChvcHRpb25zLCAocjogYW55KSA9PiB7XG4gICAgICAgICAgICBsb2coeyBzdGF0dXNDb2RlOiByLnN0YXR1c0NvZGUsIHN0YXR1c01lc3NhZ2U6IHIuc3RhdHVzTWVzc2FnZSB9KTtcbiAgICAgICAgICAgIGNvbnRleHQuZG9uZSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXF1ZXN0Lm9uKFwiZXJyb3JcIiwgKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGxvZyh7IHNlbmRFcnJvcjogZXJyb3IgfSk7XG4gICAgICAgICAgICBjb250ZXh0LmRvbmUoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmVxdWVzdC53cml0ZShyZXNwb25zZUJvZHkpO1xuICAgICAgICByZXF1ZXN0LmVuZCgpO1xuICAgIH1cbn07XG4iXX0=

@@ -32,3 +32,3 @@ import { IBucketNotificationDestination } from '@aws-cdk/aws-s3-notifications';

private readonly topicNotifications;
private customResourceCreated;
private resource?;
private readonly bucket;

@@ -35,0 +35,0 @@ constructor(parent: cdk.Construct, id: string, props: NotificationsProps);

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

this.topicNotifications = new Array();
this.customResourceCreated = false;
this.bucket = props.bucket;

@@ -40,3 +39,3 @@ }

addNotification(event, target, ...filters) {
this.createResourceOnce();
const resource = this.createResourceOnce();
// resolve target. this also provides an opportunity for the target to e.g. update

@@ -49,2 +48,8 @@ // policies to allow this notification to happen.

};
// if the target specifies any dependencies, add them to the custom resource.
// for example, the SNS topic policy must be created /before/ the notification resource.
// otherwise, S3 won't be able to confirm the subscription.
if (targetProps.dependencies) {
resource.addDependency(...targetProps.dependencies);
}
// based on the target type, add the the correct configurations array

@@ -78,15 +83,14 @@ switch (targetProps.type) {

createResourceOnce() {
if (this.customResourceCreated) {
return;
if (!this.resource) {
const handlerArn = notifications_resource_handler_1.NotificationsResourceHandler.singleton(this);
this.resource = new cdk.Resource(this, 'Resource', {
type: 'Custom::S3BucketNotifications',
properties: {
ServiceToken: handlerArn,
BucketName: this.bucket.bucketName,
NotificationConfiguration: new cdk.Token(() => this.renderNotificationConfiguration())
}
});
}
const handlerArn = notifications_resource_handler_1.NotificationsResourceHandler.singleton(this);
new cdk.Resource(this, 'Resource', {
type: 'Custom::S3BucketNotifications',
properties: {
ServiceToken: handlerArn,
BucketName: this.bucket.bucketName,
NotificationConfiguration: new cdk.Token(() => this.renderNotificationConfiguration())
}
});
this.customResourceCreated = true;
return this.resource;
}

@@ -117,2 +121,2 @@ }

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm5vdGlmaWNhdGlvbnMtcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx3RUFBa0g7QUFDbEgsb0NBQXFDO0FBRXJDLHFGQUFnRjtBQVloRjs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFPbEQsWUFBWSxNQUFxQixFQUFFLEVBQVUsRUFBRSxLQUF5QjtRQUNwRSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBUEwsd0JBQW1CLEdBQUcsSUFBSSxLQUFLLEVBQStCLENBQUM7UUFDL0QsdUJBQWtCLEdBQUcsSUFBSSxLQUFLLEVBQXNCLENBQUM7UUFDckQsdUJBQWtCLEdBQUcsSUFBSSxLQUFLLEVBQXNCLENBQUM7UUFDOUQsMEJBQXFCLEdBQUcsS0FBSyxDQUFDO1FBS2xDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLGVBQWUsQ0FBQyxLQUFnQixFQUFFLE1BQXNDLEVBQUUsR0FBRyxPQUFnQztRQUNoSCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUUxQixrRkFBa0Y7UUFDbEYsaURBQWlEO1FBQ2pELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQywrQkFBK0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hHLE1BQU0sWUFBWSxHQUF3QjtZQUN0QyxNQUFNLEVBQUUsQ0FBRSxLQUFLLENBQUU7WUFDakIsTUFBTSxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUM7U0FDakMsQ0FBQztRQUVGLHFFQUFxRTtRQUNyRSxRQUFRLFdBQVcsQ0FBQyxJQUFJLEVBQUU7WUFDdEIsS0FBSyx3REFBaUMs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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm5vdGlmaWNhdGlvbnMtcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx3RUFBa0g7QUFDbEgsb0NBQXFDO0FBRXJDLHFGQUFnRjtBQVloRjs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsR0FBRyxDQUFDLFNBQVM7SUFPbEQsWUFBWSxNQUFxQixFQUFFLEVBQVUsRUFBRSxLQUF5QjtRQUNwRSxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBUEwsd0JBQW1CLEdBQUcsSUFBSSxLQUFLLEVBQStCLENBQUM7UUFDL0QsdUJBQWtCLEdBQUcsSUFBSSxLQUFLLEVBQXNCLENBQUM7UUFDckQsdUJBQWtCLEdBQUcsSUFBSSxLQUFLLEVBQXNCLENBQUM7UUFNbEUsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksZUFBZSxDQUFDLEtBQWdCLEVBQUUsTUFBc0MsRUFBRSxHQUFHLE9BQWdDO1FBQ2hILE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTNDLGtGQUFrRjtRQUNsRixpREFBaUQ7UUFDakQsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEcsTUFBTSxZQUFZLEdBQXdCO1lBQ3RDLE1BQU0sRUFBRSxDQUFFLEtBQUssQ0FBRTtZQUNqQixNQUFNLEVBQUUsYUFBYSxDQUFDLE9BQU8sQ0FBQztTQUNqQyxDQUFDO1FBRUYsNkVBQTZFO1FBQzdFLHdGQUF3RjtRQUN4RiwyREFBMkQ7UUFDM0QsSUFBSSxXQUFXLENBQUMsWUFBWSxFQUFFO1lBQzFC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LE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDOUQ7UUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDYixhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDOUQ7S0FDSjtJQUVELE9BQU87UUFDSCxHQUFHLEVBQUU7WUFDRCxXQUFXLEVBQUUsYUFBYTtTQUM3QjtLQUNKLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLCBJQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24gfSBmcm9tICdAYXdzLWNkay9hd3MtczMtbm90aWZpY2F0aW9ucyc7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5pbXBvcnQgeyBCdWNrZXQsIEV2ZW50VHlwZSwgTm90aWZpY2F0aW9uS2V5RmlsdGVyIH0gZnJvbSAnLi4vYnVja2V0JztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNSZXNvdXJjZUhhbmRsZXIgfSBmcm9tICcuL25vdGlmaWNhdGlvbnMtcmVzb3VyY2UtaGFuZGxlcic7XG5cbmludGVyZmFjZSBOb3RpZmljYXRpb25zUHJvcHMge1xuICAgIC8qKlxuICAgICAqIFRoZSBidWNrZXQgdG8gbWFuYWdlIG5vdGlmaWNhdGlvbnMgZm9yLlxuICAgICAqXG4gICAgICogVGhpcyBjYW5ub3QgYmUgYSBgQnVja2V0UmVmYCBiZWNhdXNlIHRoZSBidWNrZXQgbWFpbnRhaW5zIHRoZSAxOjFcbiAgICAgKiByZWxhdGlvbnNoaXAgd2l0aCB0aGlzIHJlc291cmNlLlxuICAgICAqL1xuICAgIGJ1Y2tldDogQnVja2V0O1xufVxuXG4vKipcbiAqIEEgY3VzdG9tIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHRoYXQgdXBkYXRlcyBidWNrZXQgbm90aWZpY2F0aW9ucyBmb3IgYVxuICogYnVja2V0LiBUaGUgcmVhc29uIHdlIG5lZWQgaXQgaXMgYmVjYXVzZSB0aGUgQVdTOjpTMzo6QnVja2V0IG5vdGlmaWNhdGlvblxuICogY29uZmlndXJhdGlvbiBpcyBkZWZpbmVkIG9uIHRoZSBidWNrZXQgaXRzZWxmLCB3aGljaCBtYWtlcyBpdCBpbXBvc3NpYmxlIHRvXG4gKiBwcm92aXNpb24gbm90aWZpY2F0aW9ucyBhdCB0aGUgc2FtZSB0aW1lIGFzIHRoZSB0YXJnZXQgKHNpbmNlXG4gKiBQdXRCdWNrZXROb3RpZmljYXRpb25zIHZhbGlkYXRlcyB0aGUgdGFyZ2V0cykuXG4gKlxuICogU2luY2Ugb25seSBhIHNpbmdsZSBCdWNrZXROb3RpZmljYXRpb25zIHJlc291cmNlIGlzIGFsbG93ZWQgZm9yIGVhY2ggQnVja2V0LFxuICogdGhpcyBjb25zdHJ1Y3QgaXMgbm90IGV4cG9ydGVkIGluIHRoZSBwdWJsaWMgQVBJIG9mIHRoaXMgbW9kdWxlLiBJbnN0ZWFkLCBpdFxuICogaXMgY3JlYXRlZCBqdXN0LWluLXRpbWUgYnkgYHMzLkJ1Y2tldC5vbkV2ZW50YCwgc28gYSAxOjEgcmVsYXRpb25zaGlwIGlzXG4gKiBlbnN1cmVkLlxuICpcbiAqIEBzZWVcbiAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1wcm9wZXJ0aWVzLXMzLWJ1Y2tldC1ub3RpZmljYXRpb25jb25maWcuaHRtbFxuICovXG5leHBvcnQgY2xhc3MgQnVja2V0Tm90aWZpY2F0aW9ucyBleHRlbmRzIGNkay5Db25zdHJ1Y3Qge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbGFtYmRhTm90aWZpY2F0aW9ucyA9IG5ldyBBcnJheTxMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb24+KCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBxdWV1ZU5vdGlmaWNhdGlvbnMgPSBuZXcgQXJyYXk8UXVldWVDb25maWd1cmF0aW9uPigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdG9waWNOb3RpZmljYXRpb25zID0gbmV3IEFycmF5PFRvcGljQ29uZmlndXJhdGlvbj4oKTtcbiAgICBwcml2YXRlIHJlc291cmNlPzogY2RrLlJlc291cmNlO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYnVja2V0OiBCdWNrZXQ7XG5cbiAgICBjb25zdHJ1Y3RvcihwYXJlbnQ6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBOb3RpZmljYXRpb25zUHJvcHMpIHtcbiAgICAgICAgc3VwZXIocGFyZW50LCBpZCk7XG4gICAgICAgIHRoaXMuYnVja2V0ID0gcHJvcHMuYnVja2V0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZHMgYSBub3RpZmljYXRpb24gc3Vic2NyaXB0aW9uIGZvciB0aGlzIGJ1Y2tldC5cbiAgICAgKiBJZiB0aGlzIGlzIHRoZSBmaXJzdCBub3RpZmljYXRpb24sIGEgQnVja2V0Tm90aWZpY2F0aW9uIHJlc291cmNlIGlzIGFkZGVkIHRvIHRoZSBzdGFjay5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBldmVudCBUaGUgdHlwZSBvZiBldmVudFxuICAgICAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldCBjb25zdHJ1Y3RcbiAgICAgKiBAcGFyYW0gZmlsdGVycyBBIHNldCBvZiBTMyBrZXkgZmlsdGVyc1xuICAgICAqL1xuICAgIHB1YmxpYyBhZGROb3RpZmljYXRpb24oZXZlbnQ6IEV2ZW50VHlwZSwgdGFyZ2V0OiBJQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24sIC4uLmZpbHRlcnM6IE5vdGlmaWNhdGlvbktleUZpbHRlcltdKSB7XG4gICAgICAgIGNvbnN0IHJlc291cmNlID0gdGhpcy5jcmVhdGVSZXNvdXJjZU9uY2UoKTtcblxuICAgICAgICAvLyByZXNvbHZlIHRhcmdldC4gdGhpcyBhbHNvIHByb3ZpZGVzIGFuIG9wcG9ydHVuaXR5IGZvciB0aGUgdGFyZ2V0IHRvIGUuZy4gdXBkYXRlXG4gICAgICAgIC8vIHBvbGljaWVzIHRvIGFsbG93IHRoaXMgbm90aWZpY2F0aW9uIHRvIGhhcHBlbi5cbiAgICAgICAgY29uc3QgdGFyZ2V0UHJvcHMgPSB0YXJnZXQuYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbih0aGlzLmJ1Y2tldC5idWNrZXRBcm4sIHRoaXMuYnVja2V0LnVuaXF1ZUlkKTtcbiAgICAgICAgY29uc3QgY29tbW9uQ29uZmlnOiBDb21tb25Db25maWd1cmF0aW9uID0ge1xuICAgICAgICAgICAgRXZlbnRzOiBbIGV2ZW50IF0sXG4gICAgICAgICAgICBGaWx0ZXI6IHJlbmRlckZpbHRlcnMoZmlsdGVycyksXG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gaWYgdGhlIHRhcmdldCBzcGVjaWZpZXMgYW55IGRlcGVuZGVuY2llcywgYWRkIHRoZW0gdG8gdGhlIGN1c3RvbSByZXNvdXJjZS5cbiAgICAgICAgLy8gZm9yIGV4YW1wbGUsIHRoZSBTTlMgdG9waWMgcG9saWN5IG11c3QgYmUgY3JlYXRlZCAvYmVmb3JlLyB0aGUgbm90aWZpY2F0aW9uIHJlc291cmNlLlxuICAgICAgICAvLyBvdGhlcndpc2UsIFMzIHdvbid0IGJlIGFibGUgdG8gY29uZmlybSB0aGUgc3Vic2NyaXB0aW9uLlxuICAgICAgICBpZiAodGFyZ2V0UHJvcHMuZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgICAgICByZXNvdXJjZS5hZGREZXBlbmRlbmN5KC4uLnRhcmdldFByb3BzLmRlcGVuZGVuY2llcyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBiYXNlZCBvbiB0aGUgdGFyZ2V0IHR5cGUsIGFkZCB0aGUgdGhlIGNvcnJlY3QgY29uZmlndXJhdGlvbnMgYXJyYXlcbiAgICAgICAgc3dpdGNoICh0YXJnZXRQcm9wcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIEJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5MYW1iZGE6XG4gICAgICAgICAgICAgICAgdGhpcy5sYW1iZGFOb3RpZmljYXRpb25zLnB1c2goeyAuLi5jb21tb25Db25maWcsIExhbWJkYUZ1bmN0aW9uQXJuOiB0YXJnZXRQcm9wcy5hcm4gfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlF1ZXVlOlxuICAgICAgICAgICAgICAgIHRoaXMucXVldWVOb3RpZmljYXRpb25zLnB1c2goeyAuLi5jb21tb25Db25maWcsIFF1ZXVlQXJuOiB0YXJnZXRQcm9wcy5hcm4gfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlRvcGljOlxuICAgICAgICAgICAgICAgIHRoaXMudG9waWNOb3RpZmljYXRpb25zLnB1c2goeyAuLi5jb21tb25Db25maWcsIFRvcGljQXJuOiB0YXJnZXRQcm9wcy5hcm4gfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCBub3RpZmljYXRpb24gdGFyZ2V0IHR5cGU6JyArIEJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZVt0YXJnZXRQcm9wcy50eXBlXSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbmRlck5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb24oKTogTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb25zOiB0aGlzLmxhbWJkYU5vdGlmaWNhdGlvbnMubGVuZ3RoID4gMCA/IHRoaXMubGFtYmRhTm90aWZpY2F0aW9ucyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIFF1ZXVlQ29uZmlndXJhdGlvbnM6IHRoaXMucXVldWVOb3RpZmljYXRpb25zLmxlbmd0aCA+IDAgPyB0aGlzLnF1ZXVlTm90aWZpY2F0aW9ucyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIFRvcGljQ29uZmlndXJhdGlvbnM6IHRoaXMudG9waWNOb3RpZmljYXRpb25zLmxlbmd0aCA+IDAgPyB0aGlzLnRvcGljTm90aWZpY2F0aW9ucyA6IHVuZGVmaW5lZFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERlZmluZXMgdGhlIGJ1Y2tldCBub3RpZmljYXRpb25zIHJlc291cmNlcyBpbiB0aGUgc3RhY2sgb25seSBvbmNlLlxuICAgICAqIFRoaXMgaXMgY2FsbGVkIGxhemlseSBhcyB3ZSBhZGQgbm90aWZpY2F0aW9ucywgc28gdGhhdCBpZiBub3RpZmljYXRpb25zIGFyZSBub3QgYWRkZWQsXG4gICAgICogdGhlcmUgaXMgbm8gbm90aWZpY2F0aW9ucyByZXNvdXJjZS5cbiAgICAgKi9cbiAgICBwcml2YXRlIGNyZWF0ZVJlc291cmNlT25jZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnJlc291cmNlKSB7XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVyQXJuID0gTm90aWZpY2F0aW9uc1Jlc291cmNlSGFuZGxlci5zaW5nbGV0b24odGhpcyk7XG5cbiAgICAgICAgICAgIHRoaXMucmVzb3VyY2UgPSBuZXcgY2RrLlJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnQ3VzdG9tOjpTM0J1Y2tldE5vdGlmaWNhdGlvbnMnLFxuICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgU2VydmljZVRva2VuOiBoYW5kbGVyQXJuLFxuICAgICAgICAgICAgICAgICAgICBCdWNrZXROYW1lOiB0aGlzLmJ1Y2tldC5idWNrZXROYW1lLFxuICAgICAgICAgICAgICAgICAgICBOb3RpZmljYXRpb25Db25maWd1cmF0aW9uOiBuZXcgY2RrLlRva2VuKCgpID0+IHRoaXMucmVuZGVyTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbigpKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucmVzb3VyY2U7XG4gICAgfVxufVxuXG5mdW5jdGlvbiByZW5kZXJGaWx0ZXJzKGZpbHRlcnM/OiBOb3RpZmljYXRpb25LZXlGaWx0ZXJbXSk6IEZpbHRlciB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFmaWx0ZXJzIHx8IGZpbHRlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgY29uc3QgcmVuZGVyZWRSdWxlcyA9IG5ldyBBcnJheTxGaWx0ZXJSdWxlPigpO1xuXG4gICAgZm9yIChjb25zdCBydWxlIG9mIGZpbHRlcnMpIHtcbiAgICAgICAgaWYgKCFydWxlLnN1ZmZpeCAmJiAhcnVsZS5wcmVmaXgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm90aWZpY2F0aW9uS2V5RmlsdGVyIG11c3Qgc3BlY2lmeSBgcHJlZml4YCBhbmQvb3IgYHN1ZmZpeGAnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChydWxlLnN1ZmZpeCkge1xuICAgICAgICAgICAgcmVuZGVyZWRSdWxlcy5wdXNoKHsgTmFtZTogJ3N1ZmZpeCcsIFZhbHVlOiBydWxlLnN1ZmZpeCB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChydWxlLnByZWZpeCkge1xuICAgICAgICAgICAgcmVuZGVyZWRSdWxlcy5wdXNoKHsgTmFtZTogJ3ByZWZpeCcsIFZhbHVlOiBydWxlLnByZWZpeCB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIEtleToge1xuICAgICAgICAgICAgRmlsdGVyUnVsZXM6IHJlbmRlcmVkUnVsZXNcbiAgICAgICAgfVxuICAgIH07XG59XG5cbmludGVyZmFjZSBOb3RpZmljYXRpb25Db25maWd1cmF0aW9uIHtcbiAgICBMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb25zPzogTGFtYmRhRnVuY3Rpb25Db25maWd1cmF0aW9uW107XG4gICAgUXVldWVDb25maWd1cmF0aW9ucz86IFF1ZXVlQ29uZmlndXJhdGlvbltdO1xuICAgIFRvcGljQ29uZmlndXJhdGlvbnM/OiBUb3BpY0NvbmZpZ3VyYXRpb25bXTtcbn1cblxuaW50ZXJmYWNlIENvbW1vbkNvbmZpZ3VyYXRpb24ge1xuICAgIElkPzogc3RyaW5nO1xuICAgIEV2ZW50czogRXZlbnRUeXBlW107XG4gICAgRmlsdGVyPzogRmlsdGVyXG59XG5cbmludGVyZmFjZSBMYW1iZGFGdW5jdGlvbkNvbmZpZ3VyYXRpb24gZXh0ZW5kcyBDb21tb25Db25maWd1cmF0aW9uIHtcbiAgICBMYW1iZGFGdW5jdGlvbkFybjogY2RrLkFybjtcbn1cblxuaW50ZXJmYWNlIFF1ZXVlQ29uZmlndXJhdGlvbiBleHRlbmRzIENvbW1vbkNvbmZpZ3VyYXRpb24ge1xuICAgIFF1ZXVlQXJuOiBjZGsuQXJuO1xufVxuXG5pbnRlcmZhY2UgVG9waWNDb25maWd1cmF0aW9uIGV4dGVuZHMgQ29tbW9uQ29uZmlndXJhdGlvbiB7XG4gICAgVG9waWNBcm46IGNkay5Bcm47XG59XG5cbmludGVyZmFjZSBGaWx0ZXJSdWxlIHtcbiAgICBOYW1lOiAncHJlZml4JyB8ICdzdWZmaXgnO1xuICAgIFZhbHVlOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBGaWx0ZXIge1xuICAgIEtleTogeyBGaWx0ZXJSdWxlczogRmlsdGVyUnVsZVtdIH1cbn1cbiJdfQ==
export declare const BUCKET_READ_ACTIONS: string[];
export declare const BUCKET_PUT_ACTIONS: string[];
export declare const BUCKET_DELETE_ACTIONS: string[];
export declare const BUCKET_WRITE_ACTIONS: string[];
export declare const KEY_READ_ACTIONS: string[];
export declare const KEY_WRITE_ACTIONS: string[];

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

];
exports.BUCKET_WRITE_ACTIONS = [
exports.BUCKET_PUT_ACTIONS = [
's3:PutObject*',
's3:DeleteObject*',
's3:Abort*'
];
exports.BUCKET_DELETE_ACTIONS = [
's3:DeleteObject*'
];
exports.BUCKET_WRITE_ACTIONS = [
...exports.BUCKET_DELETE_ACTIONS,
...exports.BUCKET_PUT_ACTIONS
];
exports.KEY_READ_ACTIONS = [

@@ -23,2 +29,2 @@ 'kms:Decrypt',

];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwZXJtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFhLFFBQUEsbUJBQW1CLEdBQUc7SUFDL0IsZUFBZTtJQUNmLGVBQWU7SUFDZixVQUFVO0NBQ2IsQ0FBQztBQUVXLFFBQUEsb0JBQW9CLEdBQUc7SUFDaEMsZUFBZTtJQUNmLGtCQUFrQjtJQUNsQixXQUFXO0NBQ2QsQ0FBQztBQUVXLFFBQUEsZ0JBQWdCLEdBQUc7SUFDNUIsYUFBYTtJQUNiLGlCQUFpQjtDQUNwQixDQUFDO0FBRVcsUUFBQSxpQkFBaUIsR0FBRztJQUM3QixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtDQUN6QixDQUFDIn0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwZXJtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFhLFFBQUEsbUJBQW1CLEdBQUc7SUFDL0IsZUFBZTtJQUNmLGVBQWU7SUFDZixVQUFVO0NBQ2IsQ0FBQztBQUVXLFFBQUEsa0JBQWtCLEdBQUc7SUFDOUIsZUFBZTtJQUNmLFdBQVc7Q0FDZCxDQUFDO0FBRVcsUUFBQSxxQkFBcUIsR0FBRztJQUNqQyxrQkFBa0I7Q0FDckIsQ0FBQztBQUVXLFFBQUEsb0JBQW9CLEdBQUc7SUFDaEMsR0FBRyw2QkFBcUI7SUFDeEIsR0FBRywwQkFBa0I7Q0FDeEIsQ0FBQztBQUVXLFFBQUEsZ0JBQWdCLEdBQUc7SUFDNUIsYUFBYTtJQUNiLGlCQUFpQjtDQUNwQixDQUFDO0FBRVcsUUFBQSxpQkFBaUIsR0FBRztJQUM3QixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtDQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEJVQ0tFVF9SRUFEX0FDVElPTlMgPSBbXG4gICAgJ3MzOkdldE9iamVjdConLFxuICAgICdzMzpHZXRCdWNrZXQqJyxcbiAgICAnczM6TGlzdConLFxuXTtcblxuZXhwb3J0IGNvbnN0IEJVQ0tFVF9QVVRfQUNUSU9OUyA9IFtcbiAgICAnczM6UHV0T2JqZWN0KicsXG4gICAgJ3MzOkFib3J0Kidcbl07XG5cbmV4cG9ydCBjb25zdCBCVUNLRVRfREVMRVRFX0FDVElPTlMgPSBbXG4gICAgJ3MzOkRlbGV0ZU9iamVjdConXG5dO1xuXG5leHBvcnQgY29uc3QgQlVDS0VUX1dSSVRFX0FDVElPTlMgPSBbXG4gICAgLi4uQlVDS0VUX0RFTEVURV9BQ1RJT05TLFxuICAgIC4uLkJVQ0tFVF9QVVRfQUNUSU9OU1xuXTtcblxuZXhwb3J0IGNvbnN0IEtFWV9SRUFEX0FDVElPTlMgPSBbXG4gICAgJ2ttczpEZWNyeXB0JyxcbiAgICAna21zOkRlc2NyaWJlS2V5Jyxcbl07XG5cbmV4cG9ydCBjb25zdCBLRVlfV1JJVEVfQUNUSU9OUyA9IFtcbiAgICAna21zOkVuY3J5cHQnLFxuICAgICdrbXM6UmVFbmNyeXB0KicsXG4gICAgJ2ttczpHZW5lcmF0ZURhdGFLZXkqJyxcbl07XG4iXX0=

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

})(StorageClass = exports.StorageClass || (exports.StorageClass = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFpSkE7O0dBRUc7QUFDSCxJQUFZLFlBbUJYO0FBbkJELFdBQVksWUFBWTtJQUNwQjs7OztPQUlHO0lBQ0gsZ0RBQWdDLENBQUE7SUFFaEM7Ozs7T0FJRztJQUNILHNEQUFzQyxDQUFBO0lBRXRDOztPQUVHO0lBQ0gsbUNBQW1CLENBQUE7QUFDdkIsQ0FBQyxFQW5CVyxZQUFZLEdBQVosb0JBQVksS0FBWixvQkFBWSxRQW1CdkIifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFpSkE7O0dBRUc7QUFDSCxJQUFZLFlBbUJYO0FBbkJELFdBQVksWUFBWTtJQUNwQjs7OztPQUlHO0lBQ0gsZ0RBQWdDLENBQUE7SUFFaEM7Ozs7T0FJRztJQUNILHNEQUFzQyxDQUFBO0lBRXRDOztPQUVHO0lBQ0gsbUNBQW1CLENBQUE7QUFDdkIsQ0FBQyxFQW5CVyxZQUFZLEdBQVosb0JBQVksS0FBWixvQkFBWSxRQW1CdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIERlY2xhcmF0aW9uIG9mIGEgTGlmZSBjeWNsZSBydWxlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlmZWN5Y2xlUnVsZSB7XG4gICAgLyoqXG4gICAgICogQSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhpcyBydWxlLiBUaGUgdmFsdWUgY2Fubm90IGJlIG1vcmUgdGhhbiAyNTUgY2hhcmFjdGVycy5cbiAgICAgKi9cbiAgICBpZD86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhpcyBydWxlIGlzIGVuYWJsZWQuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCB0cnVlXG4gICAgICovXG4gICAgZW5hYmxlZD86IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBTcGVjaWZpZXMgYSBsaWZlY3ljbGUgcnVsZSB0aGF0IGFib3J0cyBpbmNvbXBsZXRlIG11bHRpcGFydCB1cGxvYWRzIHRvIGFuIEFtYXpvbiBTMyBidWNrZXQuXG4gICAgICpcbiAgICAgKiBUaGUgQWJvcnRJbmNvbXBsZXRlTXVsdGlwYXJ0VXBsb2FkIHByb3BlcnR5IHR5cGUgY3JlYXRlcyBhIGxpZmVjeWNsZVxuICAgICAqIHJ1bGUgdGhhdCBhYm9ydHMgaW5jb21wbGV0ZSBtdWx0aXBhcnQgdXBsb2FkcyB0byBhbiBBbWF6b24gUzMgYnVja2V0LlxuICAgICAqIFdoZW4gQW1hem9uIFMzIGFib3J0cyBhIG11bHRpcGFydCB1cGxvYWQsIGl0IGRlbGV0ZXMgYWxsIHBhcnRzXG4gICAgICogYXNzb2NpYXRlZCB3aXRoIHRoZSBtdWx0aXBhcnQgdXBsb2FkLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgSW5jb21wbGV0ZSB1cGxvYWRzIGFyZSBuZXZlciBhYm9ydGVkXG4gICAgICovXG4gICAgYWJvcnRJbmNvbXBsZXRlTXVsdGlwYXJ0VXBsb2FkQWZ0ZXJEYXlzPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZW4gb2JqZWN0cyBhcmUgZGVsZXRlZCBmcm9tIEFtYXpvbiBTMyBhbmQgQW1hem9uIEdsYWNpZXIuXG4gICAgICpcbiAgICAgKiBUaGUgZGF0ZSB2YWx1ZSBtdXN0IGJlIGluIElTTyA4NjAxIGZvcm1hdC4gVGhlIHRpbWUgaXMgYWx3YXlzIG1pZG5pZ2h0IFVUQy5cbiAgICAgKlxuICAgICAqIElmIHlvdSBzcGVjaWZ5IGFuIGV4cGlyYXRpb24gYW5kIHRyYW5zaXRpb24gdGltZSwgeW91IG11c3QgdXNlIHRoZSBzYW1lXG4gICAgICogdGltZSB1bml0IGZvciBib3RoIHByb3BlcnRpZXMgKGVpdGhlciBpbiBkYXlzIG9yIGJ5IGRhdGUpLiBUaGVcbiAgICAgKiBleHBpcmF0aW9uIHRpbWUgbXVzdCBhbHNvIGJlIGxhdGVyIHRoYW4gdGhlIHRyYW5zaXRpb24gdGltZS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IE5vIGV4cGlyYXRpb24gZGF0ZVxuICAgICAqL1xuICAgIGV4cGlyYXRpb25EYXRlPzogRGF0ZTtcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyB0aGUgbnVtYmVyIG9mIGRheXMgYWZ0ZXIgY3JlYXRpb24gd2hlbiBvYmplY3RzIGFyZSBkZWxldGVkIGZyb20gQW1hem9uIFMzIGFuZCBBbWF6b24gR2xhY2llci5cbiAgICAgKlxuICAgICAqIElmIHlvdSBzcGVjaWZ5IGFuIGV4cGlyYXRpb24gYW5kIHRyYW5zaXRpb24gdGltZSwgeW91IG11c3QgdXNlIHRoZSBzYW1lXG4gICAgICogdGltZSB1bml0IGZvciBib3RoIHByb3BlcnRpZXMgKGVpdGhlciBpbiBkYXlzIG9yIGJ5IGRhdGUpLiBUaGVcbiAgICAgKiBleHBpcmF0aW9uIHRpbWUgbXVzdCBhbHNvIGJlIGxhdGVyIHRoYW4gdGhlIHRyYW5zaXRpb24gdGltZS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IE5vIGV4cGlyYXRpb24gdGltZW91dFxuICAgICAqL1xuICAgIGV4cGlyYXRpb25JbkRheXM/OiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBUaW1lIGJldHdlZW4gd2hlbiBhIG5ldyB2ZXJzaW9uIG9mIHRoZSBvYmplY3QgaXMgdXBsb2FkZWQgdG8gdGhlIGJ1Y2tldCBhbmQgd2hlbiBvbGQgdmVyc2lvbnMgb2YgdGhlIG9iamVjdCBleHBpcmUuXG4gICAgICpcbiAgICAgKiBGb3IgYnVja2V0cyB3aXRoIHZlcnNpb25pbmcgZW5hYmxlZCAob3Igc3VzcGVuZGVkKSwgc3BlY2lmaWVzIHRoZSB0aW1lLFxuICAgICAqIGluIGRheXMsIGJldHdlZW4gd2hlbiBhIG5ldyB2ZXJzaW9uIG9mIHRoZSBvYmplY3QgaXMgdXBsb2FkZWQgdG8gdGhlXG4gICAgICogYnVja2V0IGFuZCB3aGVuIG9sZCB2ZXJzaW9ucyBvZiB0aGUgb2JqZWN0IGV4cGlyZS4gV2hlbiBvYmplY3QgdmVyc2lvbnNcbiAgICAgKiBleHBpcmUsIEFtYXpvbiBTMyBwZXJtYW5lbnRseSBkZWxldGVzIHRoZW0uIElmIHlvdSBzcGVjaWZ5IGEgdHJhbnNpdGlvblxuICAgICAqIGFuZCBleHBpcmF0aW9uIHRpbWUsIHRoZSBleHBpcmF0aW9uIHRpbWUgbXVzdCBiZSBsYXRlciB0aGFuIHRoZVxuICAgICAqIHRyYW5zaXRpb24gdGltZS5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IE5vIG5vbmN1cnJlbnQgdmVyc2lvbiBleHBpcmF0aW9uXG4gICAgICovXG4gICAgbm9uY3VycmVudFZlcnNpb25FeHBpcmF0aW9uSW5EYXlzPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogT25lIG9yIG1vcmUgdHJhbnNpdGlvbiBydWxlcyB0aGF0IHNwZWNpZnkgd2hlbiBub24tY3VycmVudCBvYmplY3RzIHRyYW5zaXRpb24gdG8gYSBzcGVjaWZpZWQgc3RvcmFnZSBjbGFzcy5cbiAgICAgKlxuICAgICAqIE9ubHkgZm9yIGZvciBidWNrZXRzIHdpdGggdmVyc2lvbmluZyBlbmFibGVkIChvciBzdXNwZW5kZWQpLlxuICAgICAqXG4gICAgICogSWYgeW91IHNwZWNpZnkgYSB0cmFuc2l0aW9uIGFuZCBleHBpcmF0aW9uIHRpbWUsIHRoZSBleHBpcmF0aW9uIHRpbWVcbiAgICAgKiBtdXN0IGJlIGxhdGVyIHRoYW4gdGhlIHRyYW5zaXRpb24gdGltZS5cbiAgICAgKi9cbiAgICBub25jdXJyZW50VmVyc2lvblRyYW5zaXRpb25zPzogTm9uY3VycmVudFZlcnNpb25UcmFuc2l0aW9uW107XG5cbiAgICAvKipcbiAgICAgKiBPbmUgb3IgbW9yZSB0cmFuc2l0aW9uIHJ1bGVzIHRoYXQgc3BlY2lmeSB3aGVuIGFuIG9iamVjdCB0cmFuc2l0aW9ucyB0byBhIHNwZWNpZmllZCBzdG9yYWdlIGNsYXNzLlxuICAgICAqXG4gICAgICogSWYgeW91IHNwZWNpZnkgYW4gZXhwaXJhdGlvbiBhbmQgdHJhbnNpdGlvbiB0aW1lLCB5b3UgbXVzdCB1c2UgdGhlIHNhbWVcbiAgICAgKiB0aW1lIHVuaXQgZm9yIGJvdGggcHJvcGVydGllcyAoZWl0aGVyIGluIGRheXMgb3IgYnkgZGF0ZSkuIFRoZVxuICAgICAqIGV4cGlyYXRpb24gdGltZSBtdXN0IGFsc28gYmUgbGF0ZXIgdGhhbiB0aGUgdHJhbnNpdGlvbiB0aW1lLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgTm8gdHJhbnNpdGlvbiBydWxlc1xuICAgICAqL1xuICAgIHRyYW5zaXRpb25zPzogVHJhbnNpdGlvbltdO1xuXG4gICAgLyoqXG4gICAgICogT2JqZWN0IGtleSBwcmVmaXggdGhhdCBpZGVudGlmaWVzIG9uZSBvciBtb3JlIG9iamVjdHMgdG8gd2hpY2ggdGhpcyBydWxlIGFwcGxpZXMuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBSdWxlIGFwcGxpZXMgdG8gYWxsIG9iamVjdHNcbiAgICAgKi9cbiAgICBwcmVmaXg/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgVGFnRmlsdGVyIHByb3BlcnR5IHR5cGUgc3BlY2lmaWVzIHRhZ3MgdG8gdXNlIHRvIGlkZW50aWZ5IGEgc3Vic2V0IG9mIG9iamVjdHMgZm9yIGFuIEFtYXpvbiBTMyBidWNrZXQuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBSdWxlIGFwcGxpZXMgdG8gYWxsIG9iamVjdHNcbiAgICAgKi9cbiAgICB0YWdGaWx0ZXJzPzoge1t0YWc6IHN0cmluZ106IGFueX07XG59XG5cbi8qKlxuICogRGVzY3JpYmVzIHdoZW4gYW4gb2JqZWN0IHRyYW5zaXRpb25zIHRvIGEgc3BlY2lmaWVkIHN0b3JhZ2UgY2xhc3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNpdGlvbiB7XG4gICAgLyoqXG4gICAgICogVGhlIHN0b3JhZ2UgY2xhc3MgdG8gd2hpY2ggeW91IHdhbnQgdGhlIG9iamVjdCB0byB0cmFuc2l0aW9uLlxuICAgICAqL1xuICAgIHN0b3JhZ2VDbGFzczogU3RvcmFnZUNsYXNzO1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZW4gb2JqZWN0cyBhcmUgdHJhbnNpdGlvbmVkIHRvIHRoZSBzcGVjaWZpZWQgc3RvcmFnZSBjbGFzcy5cbiAgICAgKlxuICAgICAqIFRoZSBkYXRlIHZhbHVlIG11c3QgYmUgaW4gSVNPIDg2MDEgZm9ybWF0LiBUaGUgdGltZSBpcyBhbHdheXMgbWlkbmlnaHQgVVRDLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgTm8gdHJhbnNpdGlvbiBkYXRlLlxuICAgICAqL1xuICAgIHRyYW5zaXRpb25EYXRlPzogRGF0ZTtcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyB0aGUgbnVtYmVyIG9mIGRheXMgYWZ0ZXIgY3JlYXRpb24gd2hlbiBvYmplY3RzIGFyZSB0cmFuc2l0aW9uZWQgdG8gdGhlIHNwZWNpZmllZCBzdG9yYWdlIGNsYXNzLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgTm8gdHJhbnNpdGlvbiBjb3VudC5cbiAgICAgKi9cbiAgICB0cmFuc2l0aW9uSW5EYXlzPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIERlc2NyaWJlcyB3aGVuIG5vbmN1cnJlbnQgdmVyc2lvbnMgdHJhbnNpdGlvbiB0byBhIHNwZWNpZmllZCBzdG9yYWdlIGNsYXNzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5vbmN1cnJlbnRWZXJzaW9uVHJhbnNpdGlvbiB7XG4gICAgLyoqXG4gICAgICogVGhlIHN0b3JhZ2UgY2xhc3MgdG8gd2hpY2ggeW91IHdhbnQgdGhlIG9iamVjdCB0byB0cmFuc2l0aW9uLlxuICAgICAqL1xuICAgIHN0b3JhZ2VDbGFzczogU3RvcmFnZUNsYXNzO1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgZGF5cyBhZnRlciBjcmVhdGlvbiB3aGVuIG9iamVjdHMgYXJlIHRyYW5zaXRpb25lZCB0byB0aGUgc3BlY2lmaWVkIHN0b3JhZ2UgY2xhc3MuXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBObyB0cmFuc2l0aW9uIGNvdW50LlxuICAgICAqL1xuICAgIHRyYW5zaXRpb25JbkRheXM6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBTdG9yYWdlIGNsYXNzIHRvIG1vdmUgYW4gb2JqZWN0IHRvXG4gKi9cbmV4cG9ydCBlbnVtIFN0b3JhZ2VDbGFzcyB7XG4gICAgLyoqXG4gICAgICogU3RvcmFnZSBjbGFzcyBmb3IgZGF0YSB0aGF0IGlzIGFjY2Vzc2VkIGxlc3MgZnJlcXVlbnRseSwgYnV0IHJlcXVpcmVzIHJhcGlkIGFjY2VzcyB3aGVuIG5lZWRlZC5cbiAgICAgKlxuICAgICAqIEhhcyBsb3dlciBhdmFpbGFiaWxpdHkgdGhhbiBTdGFuZGFyZCBzdG9yYWdlLlxuICAgICAqL1xuICAgIEluZnJlcXVlbnRBY2Nlc3MgPSAnU1RBTkRBUkRfSUEnLFxuXG4gICAgLyoqXG4gICAgICogSW5mcmVxdWVudCBBY2Nlc3MgdGhhdCdzIG9ubHkgc3RvcmVkIGluIG9uZSBhdmFpbGFiaWxpdHkgem9uZS5cbiAgICAgKlxuICAgICAqIEhhcyBsb3dlciBhdmFpbGFiaWxpdHkgdGhhbiBzdGFuZGFyZCBJbmZyZXF1ZW50QWNjZXNzLlxuICAgICAqL1xuICAgIE9uZVpvbmVJbmZyZXF1ZW50QWNjZXNzID0gJ09ORVpPTkVfSUEnLFxuXG4gICAgLyoqXG4gICAgICogU3RvcmFnZSBjbGFzcyBmb3IgbG9uZy10ZXJtIGFyY2hpdmFsIHRoYXQgY2FuIHRha2UgYmV0d2VlbiBtaW51dGVzIGFuZCBob3VycyB0byBhY2Nlc3MuXG4gICAgICovXG4gICAgR2xhY2llciA9ICdHTEFDSUVSJ1xufSJdfQ==

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

*/
accelerateConfiguration?: BucketResource.AccelerateConfigurationProperty | cdk.Token;
accelerateConfiguration?: BucketResource.AccelerateConfigurationProperty | cdk.CloudFormationToken;
/**

@@ -17,3 +17,3 @@ * ``AWS::S3::Bucket.AccessControl``

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

@@ -23,3 +23,3 @@ * ``AWS::S3::Bucket.AnalyticsConfigurations``

*/
analyticsConfigurations?: Array<BucketResource.AnalyticsConfigurationProperty | cdk.Token> | cdk.Token;
analyticsConfigurations?: Array<BucketResource.AnalyticsConfigurationProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -29,3 +29,3 @@ * ``AWS::S3::Bucket.BucketEncryption``

*/
bucketEncryption?: BucketResource.BucketEncryptionProperty | cdk.Token;
bucketEncryption?: BucketResource.BucketEncryptionProperty | cdk.CloudFormationToken;
/**

@@ -35,3 +35,3 @@ * ``AWS::S3::Bucket.BucketName``

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

@@ -41,3 +41,3 @@ * ``AWS::S3::Bucket.CorsConfiguration``

*/
corsConfiguration?: BucketResource.CorsConfigurationProperty | cdk.Token;
corsConfiguration?: BucketResource.CorsConfigurationProperty | cdk.CloudFormationToken;
/**

@@ -47,3 +47,3 @@ * ``AWS::S3::Bucket.InventoryConfigurations``

*/
inventoryConfigurations?: Array<BucketResource.InventoryConfigurationProperty | cdk.Token> | cdk.Token;
inventoryConfigurations?: Array<BucketResource.InventoryConfigurationProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -53,3 +53,3 @@ * ``AWS::S3::Bucket.LifecycleConfiguration``

*/
lifecycleConfiguration?: BucketResource.LifecycleConfigurationProperty | cdk.Token;
lifecycleConfiguration?: BucketResource.LifecycleConfigurationProperty | cdk.CloudFormationToken;
/**

@@ -59,3 +59,3 @@ * ``AWS::S3::Bucket.LoggingConfiguration``

*/
loggingConfiguration?: BucketResource.LoggingConfigurationProperty | cdk.Token;
loggingConfiguration?: BucketResource.LoggingConfigurationProperty | cdk.CloudFormationToken;
/**

@@ -65,3 +65,3 @@ * ``AWS::S3::Bucket.MetricsConfigurations``

*/
metricsConfigurations?: Array<BucketResource.MetricsConfigurationProperty | cdk.Token> | cdk.Token;
metricsConfigurations?: Array<BucketResource.MetricsConfigurationProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -71,3 +71,3 @@ * ``AWS::S3::Bucket.NotificationConfiguration``

*/
notificationConfiguration?: BucketResource.NotificationConfigurationProperty | cdk.Token;
notificationConfiguration?: BucketResource.NotificationConfigurationProperty | cdk.CloudFormationToken;
/**

@@ -77,3 +77,3 @@ * ``AWS::S3::Bucket.ReplicationConfiguration``

*/
replicationConfiguration?: BucketResource.ReplicationConfigurationProperty | cdk.Token;
replicationConfiguration?: BucketResource.ReplicationConfigurationProperty | cdk.CloudFormationToken;
/**

@@ -83,3 +83,3 @@ * ``AWS::S3::Bucket.Tags``

*/
tags?: Array<cdk.Tag | cdk.Token> | cdk.Token;
tags?: Array<cdk.Tag | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -89,3 +89,3 @@ * ``AWS::S3::Bucket.VersioningConfiguration``

*/
versioningConfiguration?: BucketResource.VersioningConfigurationProperty | cdk.Token;
versioningConfiguration?: BucketResource.VersioningConfigurationProperty | cdk.CloudFormationToken;
/**

@@ -95,3 +95,3 @@ * ``AWS::S3::Bucket.WebsiteConfiguration``

*/
websiteConfiguration?: BucketResource.WebsiteConfigurationProperty | cdk.Token;
websiteConfiguration?: BucketResource.WebsiteConfigurationProperty | cdk.CloudFormationToken;
}

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

readonly bucketWebsiteUrl: BucketWebsiteUrl;
readonly ref: BucketName;
/**

@@ -144,3 +145,3 @@ * Creates a new ``AWS::S3::Bucket``.

*/
daysAfterInitiation: number | cdk.Token;
daysAfterInitiation: number | cdk.CloudFormationToken;
}

@@ -157,3 +158,3 @@ }

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

@@ -170,3 +171,3 @@ }

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

@@ -183,3 +184,3 @@ }

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

@@ -189,3 +190,3 @@ * ``BucketResource.AnalyticsConfigurationProperty.Prefix``

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

@@ -195,3 +196,3 @@ * ``BucketResource.AnalyticsConfigurationProperty.StorageClassAnalysis``

*/
storageClassAnalysis: StorageClassAnalysisProperty | cdk.Token;
storageClassAnalysis: StorageClassAnalysisProperty | cdk.CloudFormationToken;
/**

@@ -201,3 +202,3 @@ * ``BucketResource.AnalyticsConfigurationProperty.TagFilters``

*/
tagFilters?: Array<TagFilterProperty | cdk.Token> | cdk.Token;
tagFilters?: Array<TagFilterProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -214,3 +215,3 @@ }

*/
serverSideEncryptionConfiguration: Array<ServerSideEncryptionRuleProperty | cdk.Token> | cdk.Token;
serverSideEncryptionConfiguration: Array<ServerSideEncryptionRuleProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -227,3 +228,3 @@ }

*/
corsRules: Array<CorsRuleProperty | cdk.Token> | cdk.Token;
corsRules: Array<CorsRuleProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -240,3 +241,3 @@ }

*/
allowedHeaders?: Array<string | cdk.Token> | cdk.Token;
allowedHeaders?: Array<string | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -246,3 +247,3 @@ * ``BucketResource.CorsRuleProperty.AllowedMethods``

*/
allowedMethods: Array<string | cdk.Token> | cdk.Token;
allowedMethods: Array<string | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -252,3 +253,3 @@ * ``BucketResource.CorsRuleProperty.AllowedOrigins``

*/
allowedOrigins: Array<string | cdk.Token> | cdk.Token;
allowedOrigins: Array<string | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -258,3 +259,3 @@ * ``BucketResource.CorsRuleProperty.ExposedHeaders``

*/
exposedHeaders?: Array<string | cdk.Token> | cdk.Token;
exposedHeaders?: Array<string | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -264,3 +265,3 @@ * ``BucketResource.CorsRuleProperty.Id``

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

@@ -270,3 +271,3 @@ * ``BucketResource.CorsRuleProperty.MaxAge``

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

@@ -283,3 +284,3 @@ }

*/
destination: DestinationProperty | cdk.Token;
destination: DestinationProperty | cdk.CloudFormationToken;
/**

@@ -289,3 +290,3 @@ * ``BucketResource.DataExportProperty.OutputSchemaVersion``

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

@@ -302,3 +303,3 @@ }

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

@@ -308,3 +309,3 @@ * ``BucketResource.DestinationProperty.BucketArn``

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

@@ -314,3 +315,3 @@ * ``BucketResource.DestinationProperty.Format``

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

@@ -320,3 +321,3 @@ * ``BucketResource.DestinationProperty.Prefix``

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

@@ -333,3 +334,3 @@ }

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

@@ -346,3 +347,3 @@ }

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

@@ -352,3 +353,3 @@ * ``BucketResource.FilterRuleProperty.Value``

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

@@ -365,3 +366,3 @@ }

*/
destination: DestinationProperty | cdk.Token;
destination: DestinationProperty | cdk.CloudFormationToken;
/**

@@ -371,3 +372,3 @@ * ``BucketResource.InventoryConfigurationProperty.Enabled``

*/
enabled: boolean | cdk.Token;
enabled: boolean | cdk.CloudFormationToken;
/**

@@ -377,3 +378,3 @@ * ``BucketResource.InventoryConfigurationProperty.Id``

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

@@ -383,3 +384,3 @@ * ``BucketResource.InventoryConfigurationProperty.IncludedObjectVersions``

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

@@ -389,3 +390,3 @@ * ``BucketResource.InventoryConfigurationProperty.OptionalFields``

*/
optionalFields?: Array<string | cdk.Token> | cdk.Token;
optionalFields?: Array<string | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -395,3 +396,3 @@ * ``BucketResource.InventoryConfigurationProperty.Prefix``

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

@@ -401,3 +402,3 @@ * ``BucketResource.InventoryConfigurationProperty.ScheduleFrequency``

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

@@ -414,3 +415,3 @@ }

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

@@ -420,3 +421,3 @@ * ``BucketResource.LambdaConfigurationProperty.Filter``

*/
filter?: NotificationFilterProperty | cdk.Token;
filter?: NotificationFilterProperty | cdk.CloudFormationToken;
/**

@@ -426,3 +427,3 @@ * ``BucketResource.LambdaConfigurationProperty.Function``

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

@@ -439,3 +440,3 @@ }

*/
rules: Array<RuleProperty | cdk.Token> | cdk.Token;
rules: Array<RuleProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -452,3 +453,3 @@ }

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

@@ -458,3 +459,3 @@ * ``BucketResource.LoggingConfigurationProperty.LogFilePrefix``

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

@@ -471,3 +472,3 @@ }

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

@@ -477,3 +478,3 @@ * ``BucketResource.MetricsConfigurationProperty.Prefix``

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

@@ -483,3 +484,3 @@ * ``BucketResource.MetricsConfigurationProperty.TagFilters``

*/
tagFilters?: Array<TagFilterProperty | cdk.Token> | cdk.Token;
tagFilters?: Array<TagFilterProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -496,3 +497,3 @@ }

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

@@ -502,3 +503,3 @@ * ``BucketResource.NoncurrentVersionTransitionProperty.TransitionInDays``

*/
transitionInDays: number | cdk.Token;
transitionInDays: number | cdk.CloudFormationToken;
}

@@ -515,3 +516,3 @@ }

*/
lambdaConfigurations?: Array<LambdaConfigurationProperty | cdk.Token> | cdk.Token;
lambdaConfigurations?: Array<LambdaConfigurationProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -521,3 +522,3 @@ * ``BucketResource.NotificationConfigurationProperty.QueueConfigurations``

*/
queueConfigurations?: Array<QueueConfigurationProperty | cdk.Token> | cdk.Token;
queueConfigurations?: Array<QueueConfigurationProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -527,3 +528,3 @@ * ``BucketResource.NotificationConfigurationProperty.TopicConfigurations``

*/
topicConfigurations?: Array<TopicConfigurationProperty | cdk.Token> | cdk.Token;
topicConfigurations?: Array<TopicConfigurationProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -540,3 +541,3 @@ }

*/
s3Key: S3KeyFilterProperty | cdk.Token;
s3Key: S3KeyFilterProperty | cdk.CloudFormationToken;
}

@@ -553,3 +554,3 @@ }

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

@@ -559,3 +560,3 @@ * ``BucketResource.QueueConfigurationProperty.Filter``

*/
filter?: NotificationFilterProperty | cdk.Token;
filter?: NotificationFilterProperty | cdk.CloudFormationToken;
/**

@@ -565,3 +566,3 @@ * ``BucketResource.QueueConfigurationProperty.Queue``

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

@@ -578,3 +579,3 @@ }

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

@@ -584,3 +585,3 @@ * ``BucketResource.RedirectAllRequestsToProperty.Protocol``

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

@@ -597,3 +598,3 @@ }

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

@@ -603,3 +604,3 @@ * ``BucketResource.RedirectRuleProperty.HttpRedirectCode``

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

@@ -609,3 +610,3 @@ * ``BucketResource.RedirectRuleProperty.Protocol``

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

@@ -615,3 +616,3 @@ * ``BucketResource.RedirectRuleProperty.ReplaceKeyPrefixWith``

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

@@ -621,3 +622,3 @@ * ``BucketResource.RedirectRuleProperty.ReplaceKeyWith``

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

@@ -634,3 +635,3 @@ }

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

@@ -640,3 +641,3 @@ * ``BucketResource.ReplicationConfigurationProperty.Rules``

*/
rules: Array<ReplicationRuleProperty | cdk.Token> | cdk.Token;
rules: Array<ReplicationRuleProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -653,3 +654,3 @@ }

*/
accessControlTranslation?: AccessControlTranslationProperty | cdk.Token;
accessControlTranslation?: AccessControlTranslationProperty | cdk.CloudFormationToken;
/**

@@ -659,3 +660,3 @@ * ``BucketResource.ReplicationDestinationProperty.Account``

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

@@ -665,3 +666,3 @@ * ``BucketResource.ReplicationDestinationProperty.Bucket``

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

@@ -671,3 +672,3 @@ * ``BucketResource.ReplicationDestinationProperty.EncryptionConfiguration``

*/
encryptionConfiguration?: EncryptionConfigurationProperty | cdk.Token;
encryptionConfiguration?: EncryptionConfigurationProperty | cdk.CloudFormationToken;
/**

@@ -677,3 +678,3 @@ * ``BucketResource.ReplicationDestinationProperty.StorageClass``

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

@@ -690,3 +691,3 @@ }

*/
destination: ReplicationDestinationProperty | cdk.Token;
destination: ReplicationDestinationProperty | cdk.CloudFormationToken;
/**

@@ -696,3 +697,3 @@ * ``BucketResource.ReplicationRuleProperty.Id``

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

@@ -702,3 +703,3 @@ * ``BucketResource.ReplicationRuleProperty.Prefix``

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

@@ -708,3 +709,3 @@ * ``BucketResource.ReplicationRuleProperty.SourceSelectionCriteria``

*/
sourceSelectionCriteria?: SourceSelectionCriteriaProperty | cdk.Token;
sourceSelectionCriteria?: SourceSelectionCriteriaProperty | cdk.CloudFormationToken;
/**

@@ -714,3 +715,3 @@ * ``BucketResource.ReplicationRuleProperty.Status``

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

@@ -727,3 +728,3 @@ }

*/
redirectRule: RedirectRuleProperty | cdk.Token;
redirectRule: RedirectRuleProperty | cdk.CloudFormationToken;
/**

@@ -733,3 +734,3 @@ * ``BucketResource.RoutingRuleProperty.RoutingRuleCondition``

*/
routingRuleCondition?: RoutingRuleConditionProperty | cdk.Token;
routingRuleCondition?: RoutingRuleConditionProperty | cdk.CloudFormationToken;
}

@@ -746,3 +747,3 @@ }

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

@@ -752,3 +753,3 @@ * ``BucketResource.RoutingRuleConditionProperty.KeyPrefixEquals``

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

@@ -765,3 +766,3 @@ }

*/
abortIncompleteMultipartUpload?: AbortIncompleteMultipartUploadProperty | cdk.Token;
abortIncompleteMultipartUpload?: AbortIncompleteMultipartUploadProperty | cdk.CloudFormationToken;
/**

@@ -771,3 +772,3 @@ * ``BucketResource.RuleProperty.ExpirationDate``

*/
expirationDate?: Date | cdk.Token;
expirationDate?: Date | cdk.CloudFormationToken;
/**

@@ -777,3 +778,3 @@ * ``BucketResource.RuleProperty.ExpirationInDays``

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

@@ -783,3 +784,3 @@ * ``BucketResource.RuleProperty.Id``

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

@@ -789,3 +790,3 @@ * ``BucketResource.RuleProperty.NoncurrentVersionExpirationInDays``

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

@@ -795,3 +796,3 @@ * ``BucketResource.RuleProperty.NoncurrentVersionTransition``

*/
noncurrentVersionTransition?: NoncurrentVersionTransitionProperty | cdk.Token;
noncurrentVersionTransition?: NoncurrentVersionTransitionProperty | cdk.CloudFormationToken;
/**

@@ -801,3 +802,3 @@ * ``BucketResource.RuleProperty.NoncurrentVersionTransitions``

*/
noncurrentVersionTransitions?: Array<NoncurrentVersionTransitionProperty | cdk.Token> | cdk.Token;
noncurrentVersionTransitions?: Array<NoncurrentVersionTransitionProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -807,3 +808,3 @@ * ``BucketResource.RuleProperty.Prefix``

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

@@ -813,3 +814,3 @@ * ``BucketResource.RuleProperty.Status``

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

@@ -819,3 +820,3 @@ * ``BucketResource.RuleProperty.TagFilters``

*/
tagFilters?: Array<TagFilterProperty | cdk.Token> | cdk.Token;
tagFilters?: Array<TagFilterProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
/**

@@ -825,3 +826,3 @@ * ``BucketResource.RuleProperty.Transition``

*/
transition?: TransitionProperty | cdk.Token;
transition?: TransitionProperty | cdk.CloudFormationToken;
/**

@@ -831,3 +832,3 @@ * ``BucketResource.RuleProperty.Transitions``

*/
transitions?: Array<TransitionProperty | cdk.Token> | cdk.Token;
transitions?: Array<TransitionProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -844,3 +845,3 @@ }

*/
rules: Array<FilterRuleProperty | cdk.Token> | cdk.Token;
rules: Array<FilterRuleProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -857,3 +858,3 @@ }

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

@@ -863,3 +864,3 @@ * ``BucketResource.ServerSideEncryptionByDefaultProperty.SSEAlgorithm``

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

@@ -876,3 +877,3 @@ }

*/
serverSideEncryptionByDefault?: ServerSideEncryptionByDefaultProperty | cdk.Token;
serverSideEncryptionByDefault?: ServerSideEncryptionByDefaultProperty | cdk.CloudFormationToken;
}

@@ -889,3 +890,3 @@ }

*/
sseKmsEncryptedObjects: SseKmsEncryptedObjectsProperty | cdk.Token;
sseKmsEncryptedObjects: SseKmsEncryptedObjectsProperty | cdk.CloudFormationToken;
}

@@ -902,3 +903,3 @@ }

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

@@ -915,3 +916,3 @@ }

*/
dataExport?: DataExportProperty | cdk.Token;
dataExport?: DataExportProperty | cdk.CloudFormationToken;
}

@@ -928,3 +929,3 @@ }

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

@@ -934,3 +935,3 @@ * ``BucketResource.TagFilterProperty.Value``

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

@@ -947,3 +948,3 @@ }

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

@@ -953,3 +954,3 @@ * ``BucketResource.TopicConfigurationProperty.Filter``

*/
filter?: NotificationFilterProperty | cdk.Token;
filter?: NotificationFilterProperty | cdk.CloudFormationToken;
/**

@@ -959,3 +960,3 @@ * ``BucketResource.TopicConfigurationProperty.Topic``

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

@@ -972,3 +973,3 @@ }

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

@@ -978,3 +979,3 @@ * ``BucketResource.TransitionProperty.TransitionDate``

*/
transitionDate?: Date | cdk.Token;
transitionDate?: Date | cdk.CloudFormationToken;
/**

@@ -984,3 +985,3 @@ * ``BucketResource.TransitionProperty.TransitionInDays``

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

@@ -997,3 +998,3 @@ }

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

@@ -1010,3 +1011,3 @@ }

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

@@ -1016,3 +1017,3 @@ * ``BucketResource.WebsiteConfigurationProperty.IndexDocument``

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

@@ -1022,3 +1023,3 @@ * ``BucketResource.WebsiteConfigurationProperty.RedirectAllRequestsTo``

*/
redirectAllRequestsTo?: RedirectAllRequestsToProperty | cdk.Token;
redirectAllRequestsTo?: RedirectAllRequestsToProperty | cdk.CloudFormationToken;
/**

@@ -1028,3 +1029,3 @@ * ``BucketResource.WebsiteConfigurationProperty.RoutingRules``

*/
routingRules?: Array<RoutingRuleProperty | cdk.Token> | cdk.Token;
routingRules?: Array<RoutingRuleProperty | cdk.CloudFormationToken> | cdk.CloudFormationToken;
}

@@ -1034,9 +1035,16 @@ }

export declare class BucketArn extends cdk.Arn {
private readonly thisIsABucketArn;
}
export declare class BucketDomainName extends cdk.Token {
export declare class BucketDomainName extends cdk.CloudFormationToken {
private readonly thisIsABucketDomainName;
}
export declare class BucketDualStackDomainName extends cdk.Token {
export declare class BucketDualStackDomainName extends cdk.CloudFormationToken {
private readonly thisIsABucketDualStackDomainName;
}
export declare class BucketWebsiteUrl extends cdk.Token {
export declare class BucketWebsiteUrl extends cdk.CloudFormationToken {
private readonly thisIsABucketWebsiteUrl;
}
export declare class BucketName extends cdk.CloudFormationToken {
private readonly thisIsABucketName;
}
export declare namespace cloudformation {

@@ -1051,3 +1059,3 @@ /**

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

@@ -1057,3 +1065,3 @@ * ``AWS::S3::BucketPolicy.PolicyDocument``

*/
policyDocument: object | cdk.Token;
policyDocument: object | cdk.CloudFormationToken;
}

@@ -1060,0 +1068,0 @@ /**

@@ -1,5 +0,4 @@

import { Arn } from '@aws-cdk/cdk';
import { BucketRefProps } from './bucket';
export declare function validateBucketName(bucketName?: string): void;
export declare function parseBucketArn(props: BucketRefProps): Arn;
export declare function parseBucketName(props: BucketRefProps): any;
import { BucketArn, BucketName } from './s3.generated';
export declare function parseBucketArn(props: BucketRefProps): BucketArn;
export declare function parseBucketName(props: BucketRefProps): BucketName | undefined;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const cdk_1 = require("@aws-cdk/cdk");
function validateBucketName(bucketName) {
if (!bucketName) {
return;
}
if (bucketName.search(/[^a-z0-9.-]/g) !== -1) {
throw new Error('Bucket name contains invalid characters: ' + bucketName);
}
}
exports.validateBucketName = validateBucketName;
const s3_generated_1 = require("./s3.generated");
function parseBucketArn(props) {

@@ -19,3 +11,3 @@ // if we have an explicit bucket ARN, use it.

if (props.bucketName) {
return cdk_1.Arn.fromComponents({
return new s3_generated_1.BucketArn(cdk_1.Arn.fromComponents({
// S3 Bucket names are globally unique in a partition,

@@ -27,3 +19,3 @@ // and so their ARNs have empty region and account components

resource: props.bucketName
});
}));
}

@@ -56,2 +48,2 @@ throw new Error('Cannot determine bucket ARN. At least `bucketArn` or `bucketName` is needed');

exports.parseBucketName = parseBucketName;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBbUM7QUFHbkMsU0FBZ0Isa0JBQWtCLENBQUMsVUFBbUI7SUFDbEQsSUFBSSxDQUFDLFVBQVUsRUFBRTtRQUNiLE9BQU87S0FDVjtJQUVELElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtRQUMxQyxNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO0tBQzdFO0FBQ0wsQ0FBQztBQVJELGdEQVFDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLEtBQXFCO0lBRWhELDZDQUE2QztJQUM3QyxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7UUFDakIsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDO0tBQzFCO0lBRUQsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFO1FBQ2xCLE9BQU8sU0FBRyxDQUFDLGNBQWMsQ0FBQztZQUN0QixzREFBc0Q7WUFDdEQsNkRBQTZEO1lBQzdELE1BQU0sRUFBRSxFQUFFO1lBQ1YsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLEVBQUUsSUFBSTtZQUNiLFFBQVEsRUFBRSxLQUFLLENBQUMsVUFBVTtTQUM3QixDQUFDLENBQUM7S0FDTjtJQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsNkVBQTZFLENBQUMsQ0FBQztBQUNuRyxDQUFDO0FBbkJELHdDQW1CQztBQUVELFNBQWdCLGVBQWUsQ0FBQyxLQUFxQjtJQUVqRCw4Q0FBOEM7SUFDOUMsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFO1FBQ2xCLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQztLQUMzQjtJQUVELG1FQUFtRTtJQUNuRSxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7UUFDakIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMzQyxJQUFJLE9BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxRQUFRLEVBQUU7WUFDL0IsTUFBTSxVQUFVLEdBQUcsU0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2QyxJQUFJLFVBQVUsQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFO2dCQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO2FBQ3RFO1lBQ0QsSUFBSSxVQUFVLENBQUMsWUFBWSxFQUFFO2dCQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7YUFDekQ7WUFDRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDOUI7S0FDSjtJQUVELDhDQUE4QztJQUM5QyxPQUFPLFNBQVMsQ0FBQztBQUNyQixDQUFDO0FBeEJELDBDQXdCQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBbUM7QUFFbkMsaURBQXVEO0FBRXZELFNBQWdCLGNBQWMsQ0FBQyxLQUFxQjtJQUVoRCw2Q0FBNkM7SUFDN0MsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1FBQ2pCLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQztLQUMxQjtJQUVELElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtRQUNsQixPQUFPLElBQUksd0JBQVMsQ0FBQyxTQUFHLENBQUMsY0FBYyxDQUFDO1lBQ3BDLHNEQUFzRDtZQUN0RCw2REFBNkQ7WUFDN0QsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxJQUFJO1lBQ2IsUUFBUSxFQUFFLEtBQUssQ0FBQyxVQUFVO1NBQzdCLENBQUMsQ0FBQyxDQUFDO0tBQ1A7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLDZFQUE2RSxDQUFDLENBQUM7QUFDbkcsQ0FBQztBQW5CRCx3Q0FtQkM7QUFFRCxTQUFnQixlQUFlLENBQUMsS0FBcUI7SUFFakQsOENBQThDO0lBQzlDLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtRQUNsQixPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUM7S0FDM0I7SUFFRCxtRUFBbUU7SUFDbkUsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1FBQ2pCLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDM0MsSUFBSSxPQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssUUFBUSxFQUFFO1lBQy9CLE1BQU0sVUFBVSxHQUFHLFNBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkMsSUFBSSxVQUFVLENBQUMsT0FBTyxLQUFLLElBQUksRUFBRTtnQkFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsR0FBRyxRQUFRLENBQUMsQ0FBQzthQUN0RTtZQUNELElBQUksVUFBVSxDQUFDLFlBQVksRUFBRTtnQkFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO2FBQ3pEO1lBQ0QsT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDO1NBQzlCO0tBQ0o7SUFFRCw4Q0FBOEM7SUFDOUMsT0FBTyxTQUFTLENBQUM7QUFDckIsQ0FBQztBQXhCRCwwQ0F3QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcm4gfSBmcm9tICdAYXdzLWNkay9jZGsnO1xuaW1wb3J0IHsgQnVja2V0UmVmUHJvcHMgfSBmcm9tICcuL2J1Y2tldCc7XG5pbXBvcnQgeyBCdWNrZXRBcm4sIEJ1Y2tldE5hbWUgfSBmcm9tICcuL3MzLmdlbmVyYXRlZCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUJ1Y2tldEFybihwcm9wczogQnVja2V0UmVmUHJvcHMpOiBCdWNrZXRBcm4ge1xuXG4gICAgLy8gaWYgd2UgaGF2ZSBhbiBleHBsaWNpdCBidWNrZXQgQVJOLCB1c2UgaXQuXG4gICAgaWYgKHByb3BzLmJ1Y2tldEFybikge1xuICAgICAgICByZXR1cm4gcHJvcHMuYnVja2V0QXJuO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5idWNrZXROYW1lKSB7XG4gICAgICAgIHJldHVybiBuZXcgQnVja2V0QXJuKEFybi5mcm9tQ29tcG9uZW50cyh7XG4gICAgICAgICAgICAvLyBTMyBCdWNrZXQgbmFtZXMgYXJlIGdsb2JhbGx5IHVuaXF1ZSBpbiBhIHBhcnRpdGlvbixcbiAgICAgICAgICAgIC8vIGFuZCBzbyB0aGVpciBBUk5zIGhhdmUgZW1wdHkgcmVnaW9uIGFuZCBhY2NvdW50IGNvbXBvbmVudHNcbiAgICAgICAgICAgIHJlZ2lvbjogJycsXG4gICAgICAgICAgICBhY2NvdW50OiAnJyxcbiAgICAgICAgICAgIHNlcnZpY2U6ICdzMycsXG4gICAgICAgICAgICByZXNvdXJjZTogcHJvcHMuYnVja2V0TmFtZVxuICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZGV0ZXJtaW5lIGJ1Y2tldCBBUk4uIEF0IGxlYXN0IGBidWNrZXRBcm5gIG9yIGBidWNrZXROYW1lYCBpcyBuZWVkZWQnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQnVja2V0TmFtZShwcm9wczogQnVja2V0UmVmUHJvcHMpOiBCdWNrZXROYW1lIHwgdW5kZWZpbmVkIHtcblxuICAgIC8vIGlmIHdlIGhhdmUgYW4gZXhwbGljaXQgYnVja2V0IG5hbWUsIHVzZSBpdC5cbiAgICBpZiAocHJvcHMuYnVja2V0TmFtZSkge1xuICAgICAgICByZXR1cm4gcHJvcHMuYnVja2V0TmFtZTtcbiAgICB9XG5cbiAgICAvLyBpZiB3ZSBoYXZlIGEgc3RyaW5nIGFybiwgd2UgY2FuIGV4dHJhY3QgdGhlIGJ1Y2tldCBuYW1lIGZyb20gaXQuXG4gICAgaWYgKHByb3BzLmJ1Y2tldEFybikge1xuICAgICAgICBjb25zdCByZXNvbHZlZCA9IHByb3BzLmJ1Y2tldEFybi5yZXNvbHZlKCk7XG4gICAgICAgIGlmICh0eXBlb2YocmVzb2x2ZWQpID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50cyA9IEFybi5wYXJzZShyZXNvbHZlZCk7XG4gICAgICAgICAgICBpZiAoY29tcG9uZW50cy5zZXJ2aWNlICE9PSAnczMnKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIEFSTi4gRXhwZWN0aW5nIFwiczNcIiBzZXJ2aWNlOicgKyByZXNvbHZlZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY29tcG9uZW50cy5yZXNvdXJjZU5hbWUpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEJ1Y2tldCBBUk4gbXVzdCBub3QgY29udGFpbiBhIHBhdGhgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBjb21wb25lbnRzLnJlc291cmNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gbm8gYnVja2V0IG5hbWUgaXMgb2theSBzaW5jZSBpdCdzIG9wdGlvbmFsLlxuICAgIHJldHVybiB1bmRlZmluZWQ7XG59XG4iXX0=
{
"name": "@aws-cdk/aws-s3",
"version": "0.8.2",
"version": "0.9.0",
"description": "CDK Constructs for AWS S3",

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

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

@@ -50,15 +56,16 @@ }

"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/aws-kms": "^0.8.2",
"@aws-cdk/aws-s3-notifications": "^0.8.2",
"@aws-cdk/cdk": "^0.8.2"
"@aws-cdk/aws-codepipeline-api": "^0.9.0",
"@aws-cdk/aws-iam": "^0.9.0",
"@aws-cdk/aws-kms": "^0.9.0",
"@aws-cdk/aws-s3-notifications": "^0.9.0",
"@aws-cdk/cdk": "^0.9.0"
},
"homepage": "https://github.com/awslabs/aws-cdk"
}

@@ -76,2 +76,38 @@ ## AWS S3 Construct Library

### Buckets as sources in CodePipeline
This package also defines an Action that allows you to use a
Bucket as a source in CodePipeline:
```ts
import codepipeline = require('@aws-cdk/aws-codepipeline');
import s3 = require('@aws-cdk/aws-s3');
const sourceBucket = new s3.Bucket(this, 'MyBucket', {
versioned: true, // a Bucket used as a source in CodePipeline must be versioned
});
const pipeline = new codepipeline.Pipeline(this, 'MyPipeline');
const sourceStage = new codepipeline.Stage(this, 'Source', {
pipeline,
});
const sourceAction = new s3.PipelineSource(this, 'S3Source', {
stage: sourceStage,
bucket: sourceBucket,
bucketKey: 'path/to/file.zip',
artifactName: 'SourceOuptut', //name can be arbitrary
});
// use sourceAction.artifact as the inputArtifact to later Actions...
```
You can also add the Bucket to the Pipeline directly:
```ts
// equivalent to the code above:
const sourceAction = sourceBucket.addToPipeline(sourceStage, 'CodeCommit', {
bucketKey: 'path/to/file.zip',
artifactName: 'SourceOutput',
});
```
### Importing and Exporting Buckets

@@ -78,0 +114,0 @@

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

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

@@ -117,4 +117,4 @@ {

"s3:List*",
"s3:DeleteObject*",
"s3:PutObject*",
"s3:DeleteObject*",
"s3:Abort*"

@@ -121,0 +121,0 @@ ],

@@ -19,2 +19,2 @@ #!/usr/bin/env node

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

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

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

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

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

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

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

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

const resource = new cdk.Resource(this, 'Resource', { type: 'AWS::SNS::Topic' });
const topicArn = new cdk.Ref(resource);
new cdk.Resource(this, 'Policy', {
type: 'AWS::SNS::TopicPolicy',
properties: {
Topics: [resource.ref],
Topics: [topicArn],
PolicyDocument: this.policy
}
});
this.topicArn = resource.ref;
this.topicArn = new cdk.Arn(topicArn);
}

@@ -43,2 +44,2 @@ asBucketNotificationDestination(bucketArn, bucketId) {

exports.Topic = Topic;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWRlc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm90aWZpY2F0aW9uLWRlc3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUVBQWtFO0FBQ2xFLG9DQUFxQztBQUVyQzs7O0dBR0c7QUFDSCxNQUFhLEtBQU0sU0FBUSxHQUFHLENBQUMsU0FBUztJQUtwQyxZQUFZLE1BQXFCLEVBQUUsRUFBVTtRQUN6QyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSkwsV0FBTSxHQUFHLElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ2xDLHlCQUFvQixHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7UUFLdEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO1FBRWpGLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFO1lBQzdCLElBQUksRUFBRSx1QkFBdUI7WUFDN0IsVUFBVSxFQUFFO2dCQUNSLE1BQU0sRUFBRSxDQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUU7Z0JBQ3hCLGNBQWMsRUFBRSxJQUFJLENBQUMsTUFBTTthQUM5QjtTQUNKLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQztJQUNqQyxDQUFDO0lBRU0sK0JBQStCLENBQUMsU0FBa0IsRUFBRSxRQUFnQjtRQUV2RSx1Q0FBdUM7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxFQUFFO2lCQUM3QyxRQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO2lCQUM1QyxtQkFBbUIsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDdkMsU0FBUyxDQUFDLGFBQWEsQ0FBQztpQkFDeEIsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7aUJBQzFCLFlBQVksQ0FBQyxTQUFTLEVBQUUsRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzlELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDM0M7UUFFRCxPQUFPO1lBQ0gsR0FBRyxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ2xCLElBQUksRUFBRSxlQUFlLENBQUMsaUNBQWlDLENBQUMsS0FBSztTQUNoRSxDQUFDO0lBQ04sQ0FBQztDQUNKO0FBdkNELHNCQXVDQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWRlc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibm90aWZpY2F0aW9uLWRlc3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUVBQWtFO0FBQ2xFLG9DQUFxQztBQUVyQzs7O0dBR0c7QUFDSCxNQUFhLEtBQU0sU0FBUSxHQUFHLENBQUMsU0FBUztJQUtwQyxZQUFZLE1BQXFCLEVBQUUsRUFBVTtRQUN6QyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSkwsV0FBTSxHQUFHLElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ2xDLHlCQUFvQixHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7UUFLdEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO1FBQ2pGLE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV2QyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUM3QixJQUFJLEVBQUUsdUJBQXVCO1lBQzdCLFVBQVUsRUFBRTtnQkFDUixNQUFNLEVBQUUsQ0FBRSxRQUFRLENBQUU7Z0JBQ3BCLGNBQWMsRUFBRSxJQUFJLENBQUMsTUFBTTthQUM5QjtTQUNKLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFTSwrQkFBK0IsQ0FBQyxTQUFrQixFQUFFLFFBQWdCO1FBRXZFLHVDQUF1QztRQUN2QyxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLEVBQUU7aUJBQzdDLFFBQVEsQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7aUJBQzVDLG1CQUFtQixDQUFDLGtCQUFrQixDQUFDO2lCQUN2QyxTQUFTLENBQUMsYUFBYSxDQUFDO2lCQUN4QixXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztpQkFDMUIsWUFBWSxDQUFDLFNBQVMsRUFBRSxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMzQztRQUVELE9BQU87WUFDSCxHQUFHLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDbEIsSUFBSSxFQUFFLGVBQWUsQ0FBQyxpQ0FBaUMsQ0FBQyxLQUFLO1NBQ2hFLENBQUM7SUFDTixDQUFDO0NBQ0o7QUF4Q0Qsc0JBd0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHMzbm90aWZpY2F0aW9ucyA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1zMy1ub3RpZmljYXRpb25zJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY2RrJyk7XG5cbi8qKlxuICogU2luY2Ugd2UgY2FuJ3QgdGFrZSBhIGRlcGVuZGVuY3kgb24gQGF3cy1jZGsvc25zLCB0aGlzIGlzIGEgc2ltcGxlIHdyYXBwZXJcbiAqIGZvciBBV1M6OlNOUzo6VG9waWMgd2hpY2ggaW1wbGVtZW50cyBJQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBUb3BpYyBleHRlbmRzIGNkay5Db25zdHJ1Y3QgaW1wbGVtZW50cyBzM25vdGlmaWNhdGlvbnMuSUJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uIHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9waWNBcm46IGNkay5Bcm47XG4gICAgcHJpdmF0ZSByZWFkb25seSBwb2xpY3kgPSBuZXcgY2RrLlBvbGljeURvY3VtZW50KCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBub3RpZnlpbmdCdWNrZXRQYXRocyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG4gICAgY29uc3RydWN0b3IocGFyZW50OiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHBhcmVudCwgaWQpO1xuXG4gICAgICAgIGNvbnN0IHJlc291cmNlID0gbmV3IGNkay5SZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7IHR5cGU6ICdBV1M6OlNOUzo6VG9waWMnIH0pO1xuICAgICAgICBjb25zdCB0b3BpY0FybiA9IG5ldyBjZGsuUmVmKHJlc291cmNlKTtcblxuICAgICAgICBuZXcgY2RrLlJlc291cmNlKHRoaXMsICdQb2xpY3knLCB7XG4gICAgICAgICAgICB0eXBlOiAnQVdTOjpTTlM6OlRvcGljUG9saWN5JyxcbiAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICBUb3BpY3M6IFsgdG9waWNBcm4gXSxcbiAgICAgICAgICAgICAgICBQb2xpY3lEb2N1bWVudDogdGhpcy5wb2xpY3lcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy50b3BpY0FybiA9IG5ldyBjZGsuQXJuKHRvcGljQXJuKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbihidWNrZXRBcm46IGNkay5Bcm4sIGJ1Y2tldElkOiBzdHJpbmcpOiBzM25vdGlmaWNhdGlvbnMuQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25Qcm9wcyB7XG5cbiAgICAgICAgLy8gYWRkIHBlcm1pc3Npb24gdG8gZWFjaCBzb3VyY2UgYnVja2V0XG4gICAgICAgIGlmICghdGhpcy5ub3RpZnlpbmdCdWNrZXRQYXRocy5oYXMoYnVja2V0SWQpKSB7XG4gICAgICAgICAgICB0aGlzLnBvbGljeS5hZGRTdGF0ZW1lbnQobmV3IGNkay5Qb2xpY3lTdGF0ZW1lbnQoKVxuICAgICAgICAgICAgICAgIC5kZXNjcmliZShgc2lkJHt0aGlzLnBvbGljeS5zdGF0ZW1lbnRDb3VudH1gKVxuICAgICAgICAgICAgICAgIC5hZGRTZXJ2aWNlUHJpbmNpcGFsKCdzMy5hbWF6b25hd3MuY29tJylcbiAgICAgICAgICAgICAgICAuYWRkQWN0aW9uKCdzbnM6UHVibGlzaCcpXG4gICAgICAgICAgICAgICAgLmFkZFJlc291cmNlKHRoaXMudG9waWNBcm4pXG4gICAgICAgICAgICAgICAgLmFkZENvbmRpdGlvbignQXJuTGlrZScsIHsgXCJhd3M6U291cmNlQXJuXCI6IGJ1Y2tldEFybiB9KSk7XG4gICAgICAgICAgICB0aGlzLm5vdGlmeWluZ0J1Y2tldFBhdGhzLmFkZChidWNrZXRJZCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgYXJuOiB0aGlzLnRvcGljQXJuLFxuICAgICAgICAgICAgdHlwZTogczNub3RpZmljYXRpb25zLkJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5Ub3BpY1xuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==

@@ -29,2 +29,3 @@ import { Test } from 'nodeunit';

};
'more grants'(test: Test): void;
'cross-stack permissions'(test: Test): void;

@@ -31,0 +32,0 @@ 'urlForObject returns a token with the S3 URL of the token'(test: Test): void;

@@ -9,3 +9,4 @@ import { Test } from 'nodeunit';

'prefix/suffix filters'(test: Test): void;
'a notification destination can specify a set of dependencies that must be resolved before the notifications resource is created'(test: Test): void;
};
export = _default;

@@ -5,2 +5,3 @@ "use strict";

const cdk = require("@aws-cdk/cdk");
const cdk_1 = require("@aws-cdk/cdk");
const s3 = require("../lib");

@@ -235,4 +236,27 @@ const notification_dests_1 = require("./notification-dests");

test.done();
},
'a notification destination can specify a set of dependencies that must be resolved before the notifications resource is created'(test) {
const stack = new cdk_1.Stack();
const bucket = new s3.Bucket(stack, 'Bucket');
const dependent = new cdk.Resource(stack, 'Dependent', { type: 'DependOnMe' });
const dest = {
asBucketNotificationDestination: () => ({
arn: new cdk.Arn('arn'),
type: s3n.BucketNotificationDestinationType.Queue,
dependencies: [dependent]
})
};
bucket.onObjectCreated(dest);
test.deepEqual(stack.toCloudFormation().Resources.BucketNotifications8F2E257D, {
Type: 'Custom::S3BucketNotifications',
Properties: {
ServiceToken: { 'Fn::GetAtt': ['BucketNotificationsHandler050a0587b7544547bf325f094a3db8347ECC3691', 'Arn'] },
BucketName: { Ref: 'Bucket83908E77' },
NotificationConfiguration: { QueueConfigurations: [{ Events: ['s3:ObjectCreated:*'], QueueArn: 'arn' }] }
},
DependsOn: ['Dependent']
});
test.done();
}
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5ub3RpZmljYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5ub3RpZmljYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBdUQ7QUFDdkQscURBQXNEO0FBQ3RELG9DQUFxQztBQUVyQyw2QkFBOEI7QUFDOUIsNkRBQTZDO0FBSzdDLGlCQUFTO0lBQ0wsOEJBQThCLENBQUMsSUFBVTtRQUNyQyxNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRWpDLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDcEIsV0FBVyxFQUFFO2dCQUNYLGtCQUFrQixFQUFFO29CQUNsQixNQUFNLEVBQUUsaUJBQWlCO2lCQUMxQjthQUNGO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCx5RkFBeUYsQ0FBQyxJQUFVO1FBQ2hHLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRTlCLE1BQU0sTUFBTSxHQUFHLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFaEQsTUFBTSxLQUFLLEdBQUcsSUFBSSwwQkFBSyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztRQUUxQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRWxELGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7UUFDbEQsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLHVCQUF1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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5ub3RpZmljYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5ub3RpZmljYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBdUQ7QUFDdkQscURBQXNEO0FBQ3RELG9DQUFxQztBQUNyQyxzQ0FBcUM7QUFFckMsNkJBQThCO0FBQzlCLDZEQUE2QztBQUs3QyxpQkFBUztJQUNMLDhCQUE4QixDQUFDLElBQVU7UUFDckMsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFOUIsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVqQyxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQ3BCLFdBQVcsRUFBRTtnQkFDWCxrQkFBa0IsRUFBRTtvQkFDbEIsTUFBTSxFQUFFLGlCQUFpQjtpQkFDMUI7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQseUZBQXlGLENBQUMsSUFBVTtRQUNoRyxNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5QixNQUFNLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRWhELE1BQU0sS0FBSyxHQUFHLElBQUksMEJBQUssQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFMUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUVsRCxlQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLHFCQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO1FBQ2xELGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJB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RSxDQUFFLFdBQVcsQ0FBRTtTQUM3QixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleHBlY3QsIGhhdmVSZXNvdXJjZSB9IGZyb20gJ0Bhd3MtY2RrL2Fzc2VydCc7XG5pbXBvcnQgczNuID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLXMzLW5vdGlmaWNhdGlvbnMnKTtcbmltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcbmltcG9ydCB7IFRvcGljIH0gZnJvbSAnLi9ub3RpZmljYXRpb24tZGVzdHMnO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZTpvYmplY3QtbGl0ZXJhbC1rZXktcXVvdGVzXG4vLyB0c2xpbnQ6ZGlzYWJsZTptYXgtbGluZS1sZW5ndGhcblxuZXhwb3J0ID0ge1xuICAgICdidWNrZXQgd2l0aG91dCBub3RpZmljYXRpb25zJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgICAgIG5ldyBzMy5CdWNrZXQoc3RhY2ssICdNeUJ1Y2tldCcpO1xuXG4gICAgICAgIGV4cGVjdChzdGFjaykudG9NYXRjaCh7XG4gICAgICAgICAgXCJSZXNvdXJjZXNcIjoge1xuICAgICAgICAgICAgXCJNeUJ1Y2tldEY2OEYzRkYwXCI6IHtcbiAgICAgICAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTMzo6QnVja2V0XCJcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnd2hlbiBub3RpZmljYXRpb24gYXJlIGFkZGVkLCBhIGN1c3RvbSByZXNvdXJjZSBpcyBwcm92aXNpb25lZCArIGEgbGFtYmRhIGhhbmRsZXIgZm9yIGl0Jyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgICAgIGNvbnN0IGJ1Y2tldCA9IG5ldyBzMy5CdWNrZXQoc3RhY2ssICdNeUJ1Y2tldCcpO1xuXG4gICAgICAgIGNvbnN0IHRvcGljID0gbmV3IFRvcGljKHN0YWNrLCAnTXlUb3BpYycpO1xuXG4gICAgICAgIGJ1Y2tldC5vbkV2ZW50KHMzLkV2ZW50VHlwZS5PYmplY3RDcmVhdGVkLCB0b3BpYyk7XG5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6UzM6OkJ1Y2tldCcpKTtcbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6TGFtYmRhOjpGdW5jdGlvbicsIHsgRGVzY3JpcHRpb246ICdBV1MgQ2xvdWRGb3JtYXRpb24gaGFuZGxlciBmb3IgXCJDdXN0b206OlMzQnVja2V0Tm90aWZpY2F0aW9uc1wiIHJlc291cmNlcyAoQGF3cy1jZGsvYXdzLXMzKScgfSkpO1xuICAgICAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQ3VzdG9tOjpTM0J1Y2tldE5vdGlmaWNhdGlvbnMnKSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICdidWNrZXROb3RpZmljYXRpb25UYXJnZXQgaXMgbm90IGNhbGxlZCBkdXJpbmcgc3ludGhlc2lzJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gICAgICAgIC8vIG5vdGljZSB0aGUgb3JkZXIgaGVyZSAtIHRvcGljIGlzIGRlZmluZWQgYmVmb3JlIGJ1Y2tldFxuICAgICAgICAvLyBidXQgdGhpcyBzaG91bGRuJ3QgaW1wYWN0IHRoZSBmYWN0IHRoYXQgdGhlIHRvcGljIHBvbGljeSBpbmNsdWRlc1xuICAgICAgICAvLyB0aGUgYnVja2V0IGluZm9ybWF0aW9uXG4gICAgICAgIGNvbnN0IHRvcGljID0gbmV3IFRvcGljKHN0YWNrLCAnVG9waWMnKTtcbiAgICAgICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ015QnVja2V0Jyk7XG5cbiAgICAgICAgYnVja2V0Lm9uT2JqZWN0Q3JlYXRlZCh0b3BpYyk7XG5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6U05TOjpUb3BpY1BvbGljeScsIHtcbiAgICAgICAgICBcIlRvcGljc1wiOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiUmVmXCI6IFwiVG9waWNCRkM3QUY2RVwiXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBcIlBvbGljeURvY3VtZW50XCI6IHtcbiAgICAgICAgICAgIFwiU3RhdGVtZW50XCI6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiQWN0aW9uXCI6IFwic25zOlB1Ymxpc2hcIixcbiAgICAgICAgICAgICAgICBcIkNvbmRpdGlvblwiOiB7XG4gICAgICAgICAgICAgICAgICBcIkFybkxpa2VcIjoge1xuICAgICAgICAgICAgICAgICAgICBcImF3czpTb3VyY2VBcm5cIjoge1xuICAgICAgICAgICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICBcIk15QnVja2V0RjY4RjNGRjBcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiQXJuXCJcbiAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiRWZmZWN0XCI6IFwiQWxsb3dcIixcbiAgICAgICAgICAgICAgICBcIlByaW5jaXBhbFwiOiB7XG4gICAgICAgICAgICAgICAgICBcIlNlcnZpY2VcIjogXCJzMy5hbWF6b25hd3MuY29tXCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiUmVzb3VyY2VcIjoge1xuICAgICAgICAgICAgICAgICAgXCJSZWZcIjogXCJUb3BpY0JGQzdBRjZFXCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiU2lkXCI6IFwic2lkMFwiXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBcIlZlcnNpb25cIjogXCIyMDEyLTEwLTE3XCJcbiAgICAgICAgICB9XG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ3N1YnNjcmlwdGlvbiB0eXBlcycodGVzdDogVGVzdCkge1xuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgICAgICBjb25zdCBidWNrZXQgPSBuZXcgczMuQnVja2V0KHN0YWNrLCAnVGVzdEJ1Y2tldCcpO1xuXG4gICAgICAgIGNvbnN0IHF1ZXVlVGFyZ2V0OiBzM24uSUJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uID0ge1xuICAgICAgICAgICAgYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbjogXyA9PiAoe1xuICAgICAgICAgICAgICAgIHR5cGU6IHMzbi5CdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvblR5cGUuUXVldWUsXG4gICAgICAgICAgICAgICAgYXJuOiBuZXcgY2RrLkFybignYXJuOmF3czpzcXM6Li4uJylcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgbGFtYmRhVGFyZ2V0OiBzM24uSUJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uID0ge1xuICAgICAgICAgICAgYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbjogXyA9PiAoe1xuICAgICAgICAgICAgICAgIHR5cGU6IHMzbi5CdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvblR5cGUuTGFtYmRhLFxuICAgICAgICAgICAgICAgIGFybjogbmV3IGNkay5Bcm4oJ2Fybjphd3M6bGFtYmRhOi4uLicpXG4gICAgICAgICAgICB9KVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHRvcGljVGFyZ2V0OiBzM24uSUJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uID0ge1xuICAgICAgICAgICAgYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbjogXyA9PiAoe1xuICAgICAgICAgICAgICAgIHR5cGU6IHMzbi5CdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvblR5cGUuVG9waWMsXG4gICAgICAgICAgICAgICAgYXJuOiBuZXcgY2RrLkFybignYXJuOmF3czpzbnM6Li4uJylcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH07XG5cbiAgICAgICAgYnVja2V0Lm9uRXZlbnQoczMuRXZlbnRUeXBlLk9iamVjdENyZWF0ZWQsIHF1ZXVlVGFyZ2V0KTtcbiAgICAgICAgYnVja2V0Lm9uRXZlbnQoczMuRXZlbnRUeXBlLk9iamVjdENyZWF0ZWQsIGxhbWJkYVRhcmdldCk7XG4gICAgICAgIGJ1Y2tldC5vbk9iamVjdFJlbW92ZWQodG9waWNUYXJnZXQsIHsgcHJlZml4OiAncHJlZml4JyB9KTtcblxuICAgICAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQ3VzdG9tOjpTM0J1Y2tldE5vdGlmaWNhdGlvbnMnLCB7XG4gICAgICAgICAgXCJTZXJ2aWNlVG9rZW5cIjoge1xuICAgICAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICAgICAgXCJCdWNrZXROb3RpZmljYXRpb25zSGFuZGxlcjA1MGEwNTg3Yjc1NDQ1NDdiZjMyNWYwOTRhM2RiODM0N0VDQzM2OTFcIixcbiAgICAgICAgICAgICAgXCJBcm5cIlxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJCdWNrZXROYW1lXCI6IHtcbiAgICAgICAgICAgIFwiUmVmXCI6IFwiVGVzdEJ1Y2tldDU2MEI4MEJDXCJcbiAgICAgICAgICB9LFxuICAgICAgICAgIFwiTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvblwiOiB7XG4gICAgICAgICAgICBcIkxhbWJkYUZ1bmN0aW9uQ29uZmlndXJhdGlvbnNcIjogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgXCJFdmVudHNcIjogW1xuICAgICAgICAgICAgICAgICAgXCJzMzpPYmplY3RDcmVhdGVkOipcIlxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgXCJMYW1iZGFGdW5jdGlvbkFyblwiOiBcImFybjphd3M6bGFtYmRhOi4uLlwiXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBcIlF1ZXVlQ29uZmlndXJhdGlvbnNcIjogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgXCJFdmVudHNcIjogW1xuICAgICAgICAgICAgICAgICAgXCJzMzpPYmplY3RDcmVhdGVkOipcIlxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgXCJRdWV1ZUFyblwiOiBcImFybjphd3M6c3FzOi4uLlwiXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBcIlRvcGljQ29uZmlndXJhdGlvbnNcIjogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgXCJFdmVudHNcIjogW1xuICAgICAgICAgICAgICAgICAgXCJzMzpPYmplY3RSZW1vdmVkOipcIlxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgXCJUb3BpY0FyblwiOiBcImFybjphd3M6c25zOi4uLlwiLFxuICAgICAgICAgICAgICAgIFwiRmlsdGVyXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiS2V5XCI6IHtcbiAgICAgICAgICAgICAgICAgICAgXCJGaWx0ZXJSdWxlc1wiOiBbXG4gICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJOYW1lXCI6IFwicHJlZml4XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlZhbHVlXCI6IFwicHJlZml4XCJcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9XG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ211bHRpcGxlIHN1YnNjcmlwdGlvbnMgb2YgdGhlIHNhbWUgdHlwZScodGVzdDogVGVzdCkge1xuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICAgICAgICBjb25zdCBidWNrZXQgPSBuZXcgczMuQnVja2V0KHN0YWNrLCAnVGVzdEJ1Y2tldCcpO1xuXG4gICAgICAgIGJ1Y2tldC5vbkV2ZW50KHMzLkV2ZW50VHlwZS5PYmplY3RSZW1vdmVkRGVsZXRlLCB7XG4gICAgICAgICAgICBhc0J1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uOiBfID0+ICh7XG4gICAgICAgICAgICAgICAgdHlwZTogczNuLkJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5RdWV1ZSxcbiAgICAgICAgICAgICAgICBhcm46IG5ldyBjZGsuQXJuKCdhcm46YXdzOnNxczouLi46cXVldWUxJylcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGJ1Y2tldC5vbkV2ZW50KHMzLkV2ZW50VHlwZS5PYmplY3RSZW1vdmVkRGVsZXRlLCB7XG4gICAgICAgICAgICBhc0J1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uOiBfID0+ICh7XG4gICAgICAgICAgICAgICAgdHlwZTogczNuLkJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uVHlwZS5RdWV1ZSxcbiAgICAgICAgICAgICAgICBhcm46IG5ldyBjZGsuQXJuKCdhcm46YXdzOnNxczouLi46cXVldWUyJylcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdDdXN0b206OlMzQnVja2V0Tm90aWZpY2F0aW9ucycsIHtcbiAgICAgICAgICBcIlNlcnZpY2VUb2tlblwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIkJ1Y2tldE5vdGlmaWNhdGlvbnNIYW5kbGVyMDUwYTA1ODdiNzU0NDU0N2JmMzI1ZjA5NGEzZGI4MzQ3RUNDMzY5MVwiLFxuICAgICAgICAgICAgICBcIkFyblwiXG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIkJ1Y2tldE5hbWVcIjoge1xuICAgICAgICAgICAgXCJSZWZcIjogXCJUZXN0QnVja2V0NTYwQjgwQkNcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJOb3RpZmljYXRpb25Db25maWd1cmF0aW9uXCI6IHtcbiAgICAgICAgICAgIFwiUXVldWVDb25maWd1cmF0aW9uc1wiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkV2ZW50c1wiOiBbXG4gICAgICAgICAgICAgICAgICBcInMzOk9iamVjdFJlbW92ZWQ6RGVsZXRlXCJcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIFwiUXVldWVBcm5cIjogXCJhcm46YXdzOnNxczouLi46cXVldWUxXCJcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiRXZlbnRzXCI6IFtcbiAgICAgICAgICAgICAgICAgIFwiczM6T2JqZWN0UmVtb3ZlZDpEZWxldGVcIlxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgXCJRdWV1ZUFyblwiOiBcImFybjphd3M6c3FzOi4uLjpxdWV1ZTJcIlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICdwcmVmaXgvc3VmZml4IGZpbHRlcnMnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgICAgICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldChzdGFjaywgJ1Rlc3RCdWNrZXQnKTtcblxuICAgICAgICBjb25zdCBidWNrZXROb3RpZmljYXRpb25UYXJnZXQgPSB7XG4gICAgICAgICAgICB0eXBlOiBzM24uQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlF1ZXVlLFxuICAgICAgICAgICAgYXJuOiBuZXcgY2RrLkFybignYXJuOmF3czpzcXM6Li4uJylcbiAgICAgICAgfTtcblxuICAgICAgICBidWNrZXQub25FdmVudChzMy5FdmVudFR5cGUuT2JqZWN0UmVtb3ZlZERlbGV0ZSwgeyBhc0J1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uOiBfID0+IGJ1Y2tldE5vdGlmaWNhdGlvblRhcmdldCB9LCB7IHByZWZpeDogJ2ltYWdlcy8nLCBzdWZmaXg6ICcuanBnJyB9KTtcblxuICAgICAgICBleHBlY3Qoc3RhY2spLnRvKGhhdmVSZXNvdXJjZSgnQ3VzdG9tOjpTM0J1Y2tldE5vdGlmaWNhdGlvbnMnLCB7XG4gICAgICAgICAgXCJTZXJ2aWNlVG9rZW5cIjoge1xuICAgICAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICAgICAgXCJCdWNrZXROb3RpZmljYXRpb25zSGFuZGxlcjA1MGEwNTg3Yjc1NDQ1NDdiZjMyNWYwOTRhM2RiODM0N0VDQzM2OTFcIixcbiAgICAgICAgICAgICAgXCJBcm5cIlxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJCdWNrZXROYW1lXCI6IHtcbiAgICAgICAgICAgIFwiUmVmXCI6IFwiVGVzdEJ1Y2tldDU2MEI4MEJDXCJcbiAgICAgICAgICB9LFxuICAgICAgICAgIFwiTm90aWZpY2F0aW9uQ29uZmlndXJhdGlvblwiOiB7XG4gICAgICAgICAgICBcIlF1ZXVlQ29uZmlndXJhdGlvbnNcIjogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgXCJFdmVudHNcIjogW1xuICAgICAgICAgICAgICAgICAgXCJzMzpPYmplY3RSZW1vdmVkOkRlbGV0ZVwiXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBcIkZpbHRlclwiOiB7XG4gICAgICAgICAgICAgICAgICBcIktleVwiOiB7XG4gICAgICAgICAgICAgICAgICAgIFwiRmlsdGVyUnVsZXNcIjogW1xuICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiTmFtZVwiOiBcInN1ZmZpeFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJWYWx1ZVwiOiBcIi5qcGdcIlxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJOYW1lXCI6IFwicHJlZml4XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlZhbHVlXCI6IFwiaW1hZ2VzL1wiXG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBcIlF1ZXVlQXJuXCI6IFwiYXJuOmF3czpzcXM6Li4uXCJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH1cbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnYSBub3RpZmljYXRpb24gZGVzdGluYXRpb24gY2FuIHNwZWNpZnkgYSBzZXQgb2YgZGVwZW5kZW5jaWVzIHRoYXQgbXVzdCBiZSByZXNvbHZlZCBiZWZvcmUgdGhlIG5vdGlmaWNhdGlvbnMgcmVzb3VyY2UgaXMgY3JlYXRlZCcodGVzdDogVGVzdCkge1xuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgICAgIGNvbnN0IGJ1Y2tldCA9IG5ldyBzMy5CdWNrZXQoc3RhY2ssICdCdWNrZXQnKTtcbiAgICAgICAgY29uc3QgZGVwZW5kZW50ID0gbmV3IGNkay5SZXNvdXJjZShzdGFjaywgJ0RlcGVuZGVudCcsIHsgdHlwZTogJ0RlcGVuZE9uTWUnIH0pO1xuICAgICAgICBjb25zdCBkZXN0OiBzM24uSUJ1Y2tldE5vdGlmaWNhdGlvbkRlc3RpbmF0aW9uID0ge1xuICAgICAgICAgICAgYXNCdWNrZXROb3RpZmljYXRpb25EZXN0aW5hdGlvbjogKCkgPT4gKHtcbiAgICAgICAgICAgICAgICBhcm46IG5ldyBjZGsuQXJuKCdhcm4nKSxcbiAgICAgICAgICAgICAgICB0eXBlOiBzM24uQnVja2V0Tm90aWZpY2F0aW9uRGVzdGluYXRpb25UeXBlLlF1ZXVlLFxuICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llczogWyBkZXBlbmRlbnQgXVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfTtcblxuICAgICAgICBidWNrZXQub25PYmplY3RDcmVhdGVkKGRlc3QpO1xuXG4gICAgICAgIHRlc3QuZGVlcEVxdWFsKHN0YWNrLnRvQ2xvdWRGb3JtYXRpb24oKS5SZXNvdXJjZXMuQnVja2V0Tm90aWZpY2F0aW9uczhGMkUyNTdELCB7XG4gICAgICAgICAgICBUeXBlOiAnQ3VzdG9tOjpTM0J1Y2tldE5vdGlmaWNhdGlvbnMnLFxuICAgICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgIFNlcnZpY2VUb2tlbjogeyAnRm46OkdldEF0dCc6IFsgJ0J1Y2tldE5vdGlmaWNhdGlvbnNIYW5kbGVyMDUwYTA1ODdiNzU0NDU0N2JmMzI1ZjA5NGEzZGI4MzQ3RUNDMzY5MScsICdBcm4nIF0gfSxcbiAgICAgICAgICAgICAgICBCdWNrZXROYW1lOiB7IFJlZjogJ0J1Y2tldDgzOTA4RTc3JyB9LFxuICAgICAgICAgICAgICAgIE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb246IHsgUXVldWVDb25maWd1cmF0aW9uczogWyB7IEV2ZW50czogWyAnczM6T2JqZWN0Q3JlYXRlZDoqJyBdLCBRdWV1ZUFybjogJ2FybicgfSBdIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBEZXBlbmRzT246IFsgJ0RlcGVuZGVudCcgXVxuICAgICAgICB9KTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9XG59O1xuIl19

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

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5ydWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QucnVsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUF1RDtBQUN2RCxzQ0FBcUM7QUFFckMsZ0NBQThDO0FBRTlDLGlCQUFTO0lBQ0wsNkJBQTZCLENBQUMsSUFBVTtRQUNwQyxRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLEVBQUUsQ0FBQztRQUUxQixPQUFPO1FBQ1AsSUFBSSxZQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUN4QixjQUFjLEVBQUUsQ0FBQztvQkFDYixnQkFBZ0IsRUFBRSxFQUFFO2lCQUN2QixDQUFDO1NBQ0wsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUM3QyxzQkFBc0IsRUFBRTtnQkFDcEIsS0FBSyxFQUFFLENBQUM7d0JBQ0osZ0JBQWdCLEVBQUUsRUFBRTt3QkFDcEIsTUFBTSxFQUFFLFNBQVM7cUJBQ3BCLENBQUM7YUFDTDtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxvREFBb0QsQ0FBQyxJQUFVO1FBQzNELFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxNQUFNLE1BQU0sR0FBRyxJQUFJLFlBQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDM0MsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1lBQ3BCLGdCQUFnQixFQUFFLEVBQUU7U0FDdkIsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUM3QyxzQkFBc0IsRUFBRTtnQkFDcEIsS0FBSyxF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
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5ydWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QucnVsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDRDQUF1RDtBQUN2RCxzQ0FBcUM7QUFFckMsZ0NBQThDO0FBRTlDLGlCQUFTO0lBQ0wsNkJBQTZCLENBQUMsSUFBVTtRQUNwQyxRQUFRO1FBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFLLEVBQUUsQ0FBQztRQUUxQixPQUFPO1FBQ1AsSUFBSSxZQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUN4QixjQUFjLEVBQUUsQ0FBQztvQkFDYixnQkFBZ0IsRUFBRSxFQUFFO2lCQUN2QixDQUFDO1NBQ0wsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUM3QyxzQkFBc0IsRUFBRTtnQkFDcEIsS0FBSyxFQUFFLENBQUM7d0JBQ0osZ0JBQWdCLEVBQUUsRUFBRTt3QkFDcEIsTUFBTSxFQUFFLFNBQVM7cUJBQ3BCLENBQUM7YUFDTDtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxvREFBb0QsQ0FBQyxJQUFVO1FBQzNELFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxNQUFNLE1BQU0sR0FBRyxJQUFJLFlBQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDM0MsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1lBQ3BCLGdCQUFnQixFQUFFLEVBQUU7U0FDdkIsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUM3QyxzQkFBc0IsRUFBRTtnQkFDcEIsS0FBSyxFQUFFLENBQUM7d0JBQ0osZ0JBQWdCLEVBQUUsRUFBRTt3QkFDcEIsTUFBTSxFQUFFLFNBQVM7cUJBQ3BCLENBQUM7YUFDTDtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCw2QkFBNkIsQ0FBQyxJQUFVO1FBQ3BDLFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLE9BQU87UUFDUCxJQUFJLFlBQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFO1lBQ3hCLGNBQWMsRUFBRSxDQUFDO29CQUNiLGNBQWMsRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUM7aUJBQ3pDLENBQUM7U0FDTCxDQUFDLENBQUM7UUFFSCxPQUFPO1FBQ1AsZUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBWSxDQUFDLGlCQUFpQixFQUFFO1lBQzdDLHNCQUFzQixFQUFFO2dCQUNwQixLQUFLLEVBQUUsQ0FBQzt3QkFDSixjQUFjLEVBQUUscUJBQXFCO3dCQUNyQyxNQUFNLEVBQUUsU0FBUztxQkFDcEIsQ0FBQzthQUNMO1NBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELDZCQUE2QixDQUFDLElBQVU7UUFDcEMsUUFBUTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksV0FBSyxFQUFFLENBQUM7UUFFMUIsT0FBTztRQUNQLElBQUksWUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUU7WUFDeEIsY0FBYyxFQUFFLENBQUM7b0JBQ2IsV0FBVyxFQUFFLENBQUM7NEJBQ1YsWUFBWSxFQUFFLGtCQUFZLENBQUMsT0FBTzs0QkFDbEMsZ0JBQWdCLEVBQUUsRUFBRTt5QkFDdkIsQ0FBQztpQkFDTCxDQUFDO1NBQ0wsQ0FBQyxDQUFDO1FBRUgsT0FBTztRQUNQLGVBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMscUJBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUM3QyxzQkFBc0IsRUFBRTtnQkFDcEIsS0FBSyxFQUFFLENBQUM7d0JBQ0osV0FBVyxFQUFFLENBQUM7Z0NBQ1YsWUFBWSxFQUFFLFNBQVM7Z0NBQ3ZCLGdCQUFnQixFQUFFLEVBQUU7NkJBQ3ZCLENBQUM7d0JBQ0YsTUFBTSxFQUFFLFNBQVM7cUJBQ3BCLENBQUM7YUFDTDtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCw4Q0FBOEMsQ0FBQyxJQUFVO1FBQ3JELFFBQVE7UUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQUssRUFBRSxDQUFDO1FBRTFCLDJDQUEyQztRQUMzQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNiLElBQUksWUFBTSxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUU7Z0JBQ3pCLGNBQWMsRUFBRSxDQUFDO3dCQUNiLGlDQUFpQyxFQUFFLEVBQUU7cUJBQ3hDLENBQUM7YUFDTCxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztRQUVILCtDQUErQztRQUMvQyxJQUFJLFlBQU0sQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFO1lBQ3pCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsY0FBYyxFQUFFLENBQUM7b0JBQ2IsaUNBQWlDLEVBQUUsRUFBRTtpQkFDeEMsQ0FBQztTQUNMLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4cGVjdCwgaGF2ZVJlc291cmNlIH0gZnJvbSAnQGF3cy1jZGsvYXNzZXJ0JztcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnQGF3cy1jZGsvY2RrJztcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgeyBCdWNrZXQsIFN0b3JhZ2VDbGFzcyB9IGZyb20gJy4uL2xpYic7XG5cbmV4cG9ydCA9IHtcbiAgICAnQnVja2V0IHdpdGggZXhwaXJhdGlvbiBkYXlzJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIC8vIEdJVkVOXG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICAgICAgLy8gV0hFTlxuICAgICAgICBuZXcgQnVja2V0KHN0YWNrLCAnQnVja2V0Jywge1xuICAgICAgICAgICAgbGlmZWN5Y2xlUnVsZXM6IFt7XG4gICAgICAgICAgICAgICAgZXhwaXJhdGlvbkluRGF5czogMzBcbiAgICAgICAgICAgIH1dXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFRIRU5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6UzM6OkJ1Y2tldCcsIHtcbiAgICAgICAgICAgIExpZmVjeWNsZUNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgICAgICAgICBSdWxlczogW3tcbiAgICAgICAgICAgICAgICAgICAgRXhwaXJhdGlvbkluRGF5czogMzAsXG4gICAgICAgICAgICAgICAgICAgIFN0YXR1czogXCJFbmFibGVkXCJcbiAgICAgICAgICAgICAgICB9XVxuICAgICAgICAgICAgfVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgfSxcblxuICAgICdDYW4gdXNlIGFkZExpZmVjeWNsZVJ1bGUoKSB0byBhZGQgYSBsaWZlY3ljbGUgcnVsZScodGVzdDogVGVzdCkge1xuICAgICAgICAvLyBHSVZFTlxuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgICAgIC8vIFdIRU5cbiAgICAgICAgY29uc3QgYnVja2V0ID0gbmV3IEJ1Y2tldChzdGFjaywgJ0J1Y2tldCcpO1xuICAgICAgICBidWNrZXQuYWRkTGlmZWN5Y2xlUnVsZSh7XG4gICAgICAgICAgICBleHBpcmF0aW9uSW5EYXlzOiAzMFxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUSEVOXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlMzOjpCdWNrZXQnLCB7XG4gICAgICAgICAgICBMaWZlY3ljbGVDb25maWd1cmF0aW9uOiB7XG4gICAgICAgICAgICAgICAgUnVsZXM6IFt7XG4gICAgICAgICAgICAgICAgICAgIEV4cGlyYXRpb25JbkRheXM6IDMwLFxuICAgICAgICAgICAgICAgICAgICBTdGF0dXM6IFwiRW5hYmxlZFwiXG4gICAgICAgICAgICAgICAgfV1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRlc3QuZG9uZSgpO1xuICAgIH0sXG5cbiAgICAnQnVja2V0IHdpdGggZXhwaXJhdGlvbiBkYXRlJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIC8vIEdJVkVOXG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICAgICAgLy8gV0hFTlxuICAgICAgICBuZXcgQnVja2V0KHN0YWNrLCAnQnVja2V0Jywge1xuICAgICAgICAgICAgbGlmZWN5Y2xlUnVsZXM6IFt7XG4gICAgICAgICAgICAgICAgZXhwaXJhdGlvbkRhdGU6IG5ldyBEYXRlKCcyMDE4LTAxLTAxJylcbiAgICAgICAgICAgIH1dXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFRIRU5cbiAgICAgICAgZXhwZWN0KHN0YWNrKS50byhoYXZlUmVzb3VyY2UoJ0FXUzo6UzM6OkJ1Y2tldCcsIHtcbiAgICAgICAgICAgIExpZmVjeWNsZUNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgICAgICAgICBSdWxlczogW3tcbiAgICAgICAgICAgICAgICAgICAgRXhwaXJhdGlvbkRhdGU6ICcyMDE4LTAxLTAxVDAwOjAwOjAwJyxcbiAgICAgICAgICAgICAgICAgICAgU3RhdHVzOiBcIkVuYWJsZWRcIlxuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ0J1Y2tldCB3aXRoIHRyYW5zaXRpb24gcnVsZScodGVzdDogVGVzdCkge1xuICAgICAgICAvLyBHSVZFTlxuICAgICAgICBjb25zdCBzdGFjayA9IG5ldyBTdGFjaygpO1xuXG4gICAgICAgIC8vIFdIRU5cbiAgICAgICAgbmV3IEJ1Y2tldChzdGFjaywgJ0J1Y2tldCcsIHtcbiAgICAgICAgICAgIGxpZmVjeWNsZVJ1bGVzOiBbe1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb25zOiBbe1xuICAgICAgICAgICAgICAgICAgICBzdG9yYWdlQ2xhc3M6IFN0b3JhZ2VDbGFzcy5HbGFjaWVyLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uSW5EYXlzOiAzMFxuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICB9XVxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBUSEVOXG4gICAgICAgIGV4cGVjdChzdGFjaykudG8oaGF2ZVJlc291cmNlKCdBV1M6OlMzOjpCdWNrZXQnLCB7XG4gICAgICAgICAgICBMaWZlY3ljbGVDb25maWd1cmF0aW9uOiB7XG4gICAgICAgICAgICAgICAgUnVsZXM6IFt7XG4gICAgICAgICAgICAgICAgICAgIFRyYW5zaXRpb25zOiBbe1xuICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmFnZUNsYXNzOiAnR0xBQ0lFUicsXG4gICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2l0aW9uSW5EYXlzOiAzMFxuICAgICAgICAgICAgICAgICAgICB9XSxcbiAgICAgICAgICAgICAgICAgICAgU3RhdHVzOiBcIkVuYWJsZWRcIlxuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxuXG4gICAgJ05vbmN1cnJlbnQgcnVsZSBvbiBub252ZXJzaW9uZWQgYnVja2V0IGZhaWxzJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgIC8vIEdJVkVOXG4gICAgICAgIGNvbnN0IHN0YWNrID0gbmV3IFN0YWNrKCk7XG5cbiAgICAgICAgLy8gV0hFTjogRmFpbCBiZWNhdXNlIG9mIGxhY2sgb2YgdmVyc2lvbmluZ1xuICAgICAgICB0ZXN0LnRocm93cygoKSA9PiB7XG4gICAgICAgICAgICBuZXcgQnVja2V0KHN0YWNrLCAnQnVja2V0MScsIHtcbiAgICAgICAgICAgICAgICBsaWZlY3ljbGVSdWxlczogW3tcbiAgICAgICAgICAgICAgICAgICAgbm9uY3VycmVudFZlcnNpb25FeHBpcmF0aW9uSW5EYXlzOiAxMFxuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gV0hFTjogU3VjY2VlZHMgYmVjYXVzZSB2ZXJzaW9uaW5nIGlzIGVuYWJsZWRcbiAgICAgICAgbmV3IEJ1Y2tldChzdGFjaywgJ0J1Y2tldDInLCB7XG4gICAgICAgICAgICB2ZXJzaW9uZWQ6IHRydWUsXG4gICAgICAgICAgICBsaWZlY3ljbGVSdWxlczogW3tcbiAgICAgICAgICAgICAgICBub25jdXJyZW50VmVyc2lvbkV4cGlyYXRpb25JbkRheXM6IDEwXG4gICAgICAgICAgICB9XVxuICAgICAgICB9KTtcblxuICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICB9LFxufTtcbiJdfQ==

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

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxvQ0FBcUM7QUFFckMsNkJBQThCO0FBQzlCLHNDQUE4RDtBQUU5RCxpQkFBUztJQUNMLGNBQWMsRUFBRTtRQUNaLGNBQWMsQ0FBQyxJQUFVO1lBQ3JCLE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNwRCxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFjLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ3pELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDO1FBRUQsOEJBQThCLENBQUMsSUFBVTtZQUNyQyxNQUFNLFVBQVUsR0FBRyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLHFCQUFjLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQ3hFLENBQUUsRUFBRTtvQkFDRixDQUFFLEtBQUs7d0JBQ0wsR0FBRzt3QkFDSCxFQUFFLEdBQUcsRUFBRSxnQkFBZ0IsRUFBRTt3QkFDekIsR0FBRzt3QkFDSCxJQUFJO3dCQUNKLEdBQUc7d0JBQ0gsRUFBRTt3QkFDRixHQUFHO3dCQUNILEVBQUU7d0JBQ0YsR0FBRzt3QkFDSCxPQUFPLENBQUUsQ0FBRSxFQUFFLENBQUMsQ0FBQztZQUNuQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELDRDQUE0QyxDQUFDLElBQVU7WUFDbkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBYyxDQUFDLEVBQUUsQ0FBQyxFQUFFLDZFQUE2RSxDQUFDLENBQUM7WUFDckgsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7S0FDSjtJQUVELGVBQWUsRUFBRTtRQUViLGVBQWUsQ0FBQyxJQUFVO1lBQ3RCLE1BQU0sVUFBVSxHQUFHLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELHFDQUFxQyxDQUFDLElBQVU7WUFDNUMsTUFBTSxTQUFTLEdBQUcsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFDN0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLHNCQUFlLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFDekUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCx3REFBd0QsQ0FBQyxJQUFVO1lBQy9ELE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDbkYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLHNCQUFlLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDdkUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxzQ0FBc0MsQ0FBQyxJQUFVO1lBQzdDLE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQzdELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxpQ0FBaUMsQ0FBQyxJQUFVO1lBQ3hDLE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFlLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLHNDQUFzQyxDQUFDLENBQUM7WUFDMUYsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCx1QkFBdUIsQ0FBQyxJQUFVO1lBQzlCLE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1lBQ2xFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsb0NBQW9DLENBQUMsQ0FBQztZQUN4RixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztLQUNKO0NBQ0osQ0FBQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxvQ0FBcUM7QUFFckMsNkJBQThCO0FBQzlCLHNDQUE4RDtBQUU5RCxpQkFBUztJQUNMLGNBQWMsRUFBRTtRQUNaLGNBQWMsQ0FBQyxJQUFVO1lBQ3JCLE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNwRCxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFjLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ3pELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDO1FBRUQsOEJBQThCLENBQUMsSUFBVTtZQUNyQyxNQUFNLFVBQVUsR0FBRyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLHFCQUFjLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQ3hFLENBQUUsRUFBRTtvQkFDRixDQUFFLEtBQUs7d0JBQ0wsR0FBRzt3QkFDSCxFQUFFLEdBQUcsRUFBRSxnQkFBZ0IsRUFBRTt3QkFDekIsR0FBRzt3QkFDSCxJQUFJO3dCQUNKLEdBQUc7d0JBQ0gsRUFBRTt3QkFDRixHQUFHO3dCQUNILEVBQUU7d0JBQ0YsR0FBRzt3QkFDSCxPQUFPLENBQUUsQ0FBRSxFQUFFLENBQUMsQ0FBQztZQUNuQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELDRDQUE0QyxDQUFDLElBQVU7WUFDbkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBYyxDQUFDLEVBQUUsQ0FBQyxFQUFFLDZFQUE2RSxDQUFDLENBQUM7WUFDckgsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7S0FDSjtJQUVELGVBQWUsRUFBRTtRQUViLGVBQWUsQ0FBQyxJQUFVO1lBQ3RCLE1BQU0sVUFBVSxHQUFHLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELHFDQUFxQyxDQUFDLElBQVU7WUFDNUMsTUFBTSxTQUFTLEdBQUcsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFDN0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLHNCQUFlLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFDekUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCx3REFBd0QsQ0FBQyxJQUFVO1lBQy9ELE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDbkYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLHNCQUFlLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDdkUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxzQ0FBc0MsQ0FBQyxJQUFVO1lBQzdDLE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQzdELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxpQ0FBaUMsQ0FBQyxJQUFVO1lBQ3hDLE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFlLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLHNDQUFzQyxDQUFDLENBQUM7WUFDMUYsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCx1QkFBdUIsQ0FBQyxJQUFVO1lBQzlCLE1BQU0sU0FBUyxHQUFHLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1lBQ2xFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQWUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsb0NBQW9DLENBQUMsQ0FBQztZQUN4RixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztLQUNKO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjZGsgPSByZXF1aXJlKCdAYXdzLWNkay9jZGsnKTtcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgczMgPSByZXF1aXJlKCcuLi9saWInKTtcbmltcG9ydCB7IHBhcnNlQnVja2V0QXJuLCBwYXJzZUJ1Y2tldE5hbWUgfSBmcm9tICcuLi9saWIvdXRpbCc7XG5cbmV4cG9ydCA9IHtcbiAgICBwYXJzZUJ1Y2tldEFybjoge1xuICAgICAgICAnZXhwbGljaXQgYXJuJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBidWNrZXRBcm4gPSBuZXcgczMuQnVja2V0QXJuKCdteTpidWNrZXQ6YXJuJyk7XG4gICAgICAgICAgICB0ZXN0LmRlZXBFcXVhbChwYXJzZUJ1Y2tldEFybih7IGJ1Y2tldEFybiB9KSwgYnVja2V0QXJuKTtcbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdwcm9kdWNlIGFybiBmcm9tIGJ1Y2tldCBuYW1lJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBidWNrZXROYW1lID0gbmV3IHMzLkJ1Y2tldE5hbWUoJ2hlbGxvJyk7XG4gICAgICAgICAgICB0ZXN0LmRlZXBFcXVhbChjZGsucmVzb2x2ZShwYXJzZUJ1Y2tldEFybih7IGJ1Y2tldE5hbWUgfSkpLCB7ICdGbjo6Sm9pbic6XG4gICAgICAgICAgICBbICcnLFxuICAgICAgICAgICAgICBbICdhcm4nLFxuICAgICAgICAgICAgICAgICc6JyxcbiAgICAgICAgICAgICAgICB7IFJlZjogJ0FXUzo6UGFydGl0aW9uJyB9LFxuICAgICAgICAgICAgICAgICc6JyxcbiAgICAgICAgICAgICAgICAnczMnLFxuICAgICAgICAgICAgICAgICc6JyxcbiAgICAgICAgICAgICAgICAnJyxcbiAgICAgICAgICAgICAgICAnOicsXG4gICAgICAgICAgICAgICAgJycsXG4gICAgICAgICAgICAgICAgJzonLFxuICAgICAgICAgICAgICAgICdoZWxsbycgXSBdIH0pO1xuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgJ2ZhaWxzIGlmIG5laXRoZXIgYXJuIG5vciBuYW1lIGFyZSBwcm92aWRlZCcodGVzdDogVGVzdCkge1xuICAgICAgICAgICAgdGVzdC50aHJvd3MoKCkgPT4gcGFyc2VCdWNrZXRBcm4oe30pLCAvQ2Fubm90IGRldGVybWluZSBidWNrZXQgQVJOLiBBdCBsZWFzdCBgYnVja2V0QXJuYCBvciBgYnVja2V0TmFtZWAgaXMgbmVlZGVkLyk7XG4gICAgICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICAgICAgfVxuICAgIH0sXG5cbiAgICBwYXJzZUJ1Y2tldE5hbWU6IHtcblxuICAgICAgICAnZXhwbGljaXQgbmFtZScodGVzdDogVGVzdCkge1xuICAgICAgICAgICAgY29uc3QgYnVja2V0TmFtZSA9IG5ldyBzMy5CdWNrZXROYW1lKCdmb28nKTtcbiAgICAgICAgICAgIHRlc3QuZGVlcEVxdWFsKGNkay5yZXNvbHZlKHBhcnNlQnVja2V0TmFtZSh7IGJ1Y2tldE5hbWUgfSkpLCAnZm9vJyk7XG4gICAgICAgICAgICB0ZXN0LmRvbmUoKTtcbiAgICAgICAgfSxcblxuICAgICAgICAnZXh0cmFjdCBidWNrZXQgbmFtZSBmcm9tIHN0cmluZyBhcm4nKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IGJ1Y2tldEFybiA9IG5ldyBzMy5CdWNrZXRBcm4oJ2Fybjphd3M6czM6OjpteS1idWNrZXQnKTtcbiAgICAgICAgICAgIHRlc3QuZGVlcEVxdWFsKGNkay5yZXNvbHZlKHBhcnNlQnVja2V0TmFtZSh7IGJ1Y2tldEFybiB9KSksICdteS1idWNrZXQnKTtcbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICd1bmRlZmluZWQgaWYgY2Fubm90IGV4dHJhY3QgbmFtZSBmcm9tIGEgbm9uLXN0cmluZyBhcm4nKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IGJ1Y2tldEFybiA9IG5ldyBzMy5CdWNrZXRBcm4obmV3IGNkay5GbkNvbmNhdCgnYXJuOmF3czpzMzo6OicsICdteS1idWNrZXQnKSk7XG4gICAgICAgICAgICB0ZXN0LmRlZXBFcXVhbChjZGsucmVzb2x2ZShwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXRBcm4gfSkpLCB1bmRlZmluZWQpO1xuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgJ2ZhaWxzIGlmIGFybiB1c2VzIGEgbm9uIFwiczNcIiBzZXJ2aWNlJyh0ZXN0OiBUZXN0KSB7XG4gICAgICAgICAgICBjb25zdCBidWNrZXRBcm4gPSBuZXcgczMuQnVja2V0QXJuKCdhcm46YXdzOnh4Ojo6bXktYnVja2V0Jyk7XG4gICAgICAgICAgICB0ZXN0LnRocm93cygoKSA9PiBwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXRBcm4gfSksIC9JbnZhbGlkIEFSTi8pO1xuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH0sXG5cbiAgICAgICAgJ2ZhaWxzIGlmIEFSTiBoYXMgaW52YWxpZCBmb3JtYXQnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IGJ1Y2tldEFybiA9IG5ldyBzMy5CdWNrZXRBcm4oJ2ludmFsaWQtYXJuJyk7XG4gICAgICAgICAgICB0ZXN0LnRocm93cygoKSA9PiBwYXJzZUJ1Y2tldE5hbWUoeyBidWNrZXRBcm4gfSksIC9BUk5zIG11c3QgaGF2ZSBhdCBsZWFzdCA2IGNvbXBvbmVudHMvKTtcbiAgICAgICAgICAgIHRlc3QuZG9uZSgpO1xuICAgICAgICB9LFxuXG4gICAgICAgICdmYWlscyBpZiBBUk4gaGFzIHBhdGgnKHRlc3Q6IFRlc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IGJ1Y2tldEFybiA9IG5ldyBzMy5CdWNrZXRBcm4oJ2Fybjphd3M6czM6OjpteS1idWNrZXQvcGF0aCcpO1xuICAgICAgICAgICAgdGVzdC50aHJvd3MoKCkgPT4gcGFyc2VCdWNrZXROYW1lKHsgYnVja2V0QXJuIH0pLCAvQnVja2V0IEFSTiBtdXN0IG5vdCBjb250YWluIGEgcGF0aC8pO1xuICAgICAgICAgICAgdGVzdC5kb25lKCk7XG4gICAgICAgIH1cbiAgICB9LFxufTtcbiJdfQ==
{
"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

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

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