@aws-cdk/aws-ec2
Advanced tools
Comparing version 0.25.1 to 0.25.2
@@ -9,2 +9,3 @@ export * from './connections'; | ||
export * from './vpc-network-provider'; | ||
export * from './vpn'; | ||
export * from './ec2.generated'; |
@@ -14,4 +14,5 @@ "use strict"; | ||
__export(require("./vpc-network-provider")); | ||
__export(require("./vpn")); | ||
// AWS::EC2 CloudFormation Resources: | ||
__export(require("./ec2.generated")); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1DQUE4QjtBQUM5QixzQ0FBaUM7QUFDakMscUNBQWdDO0FBQ2hDLHNDQUFpQztBQUNqQywyQ0FBc0M7QUFDdEMsMkJBQXNCO0FBQ3RCLCtCQUEwQjtBQUMxQiw0Q0FBdUM7QUFFdkMscUNBQXFDO0FBQ3JDLHFDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29ubmVjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnN0YW5jZS10eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL21hY2hpbmUtaW1hZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWN1cml0eS1ncm91cCc7XG5leHBvcnQgKiBmcm9tICcuL3NlY3VyaXR5LWdyb3VwLXJ1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi92cGMnO1xuZXhwb3J0ICogZnJvbSAnLi92cGMtcmVmJztcbmV4cG9ydCAqIGZyb20gJy4vdnBjLW5ldHdvcmstcHJvdmlkZXInO1xuXG4vLyBBV1M6OkVDMiBDbG91ZEZvcm1hdGlvbiBSZXNvdXJjZXM6XG5leHBvcnQgKiBmcm9tICcuL2VjMi5nZW5lcmF0ZWQnO1xuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1DQUE4QjtBQUM5QixzQ0FBaUM7QUFDakMscUNBQWdDO0FBQ2hDLHNDQUFpQztBQUNqQywyQ0FBc0M7QUFDdEMsMkJBQXNCO0FBQ3RCLCtCQUEwQjtBQUMxQiw0Q0FBdUM7QUFDdkMsMkJBQXNCO0FBRXRCLHFDQUFxQztBQUNyQyxxQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Nvbm5lY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vaW5zdGFuY2UtdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9tYWNoaW5lLWltYWdlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VjdXJpdHktZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWN1cml0eS1ncm91cC1ydWxlJztcbmV4cG9ydCAqIGZyb20gJy4vdnBjJztcbmV4cG9ydCAqIGZyb20gJy4vdnBjLXJlZic7XG5leHBvcnQgKiBmcm9tICcuL3ZwYy1uZXR3b3JrLXByb3ZpZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vdnBuJztcblxuLy8gQVdTOjpFQzIgQ2xvdWRGb3JtYXRpb24gUmVzb3VyY2VzOlxuZXhwb3J0ICogZnJvbSAnLi9lYzIuZ2VuZXJhdGVkJztcbiJdfQ== |
import { Construct, IConstruct, IDependable } from "@aws-cdk/cdk"; | ||
import { VpnConnection, VpnConnectionOptions } from './vpn'; | ||
export interface IVpcSubnet extends IConstruct { | ||
@@ -46,2 +47,6 @@ /** | ||
/** | ||
* Identifier for the VPN gateway | ||
*/ | ||
readonly vpnGatewayId?: string; | ||
/** | ||
* Return the subnets appropriate for the placement strategy | ||
@@ -59,2 +64,6 @@ */ | ||
/** | ||
* Adds a new VPN connection to this VPC | ||
*/ | ||
addVpnConnection(id: string, options: VpnConnectionOptions): VpnConnection; | ||
/** | ||
* Exports this VPC so it can be consumed by another stack. | ||
@@ -153,2 +162,6 @@ */ | ||
/** | ||
* Identifier for the VPN gateway | ||
*/ | ||
abstract readonly vpnGatewayId?: string; | ||
/** | ||
* Dependencies for internet connectivity | ||
@@ -166,2 +179,6 @@ */ | ||
/** | ||
* Adds a new VPN connection to this VPC | ||
*/ | ||
addVpnConnection(id: string, options: VpnConnectionOptions): VpnConnection; | ||
/** | ||
* Export this VPC from the stack | ||
@@ -231,2 +248,6 @@ */ | ||
isolatedSubnetNames?: string[]; | ||
/** | ||
* VPN gateway's identifier | ||
*/ | ||
vpnGatewayId?: string; | ||
} | ||
@@ -233,0 +254,0 @@ export interface VpcSubnetImportProps { |
@@ -5,2 +5,3 @@ "use strict"; | ||
const util_1 = require("./util"); | ||
const vpn_1 = require("./vpn"); | ||
/** | ||
@@ -85,2 +86,8 @@ * The type of Subnet | ||
/** | ||
* Adds a new VPN connection to this VPC | ||
*/ | ||
addVpnConnection(id, options) { | ||
return new vpn_1.VpnConnection(this, id, Object.assign({ vpc: this }, options)); | ||
} | ||
/** | ||
* Return whether the given subnet is one of this VPC's public subnets. | ||
@@ -103,2 +110,2 @@ * | ||
exports.VpcNetworkBase = VpcNetworkBase; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnBjLXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInZwYy1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBa0U7QUFDbEUsaUNBQW9DO0FBMkVwQzs7R0FFRztBQUNILElBQVksVUFrQ1g7QUFsQ0QsV0FBWSxVQUFVO0lBQ3BCOzs7OztPQUtHO0lBQ0gsbURBQVksQ0FBQTtJQUVaOzs7Ozs7Ozs7OztPQVdHO0lBQ0gsaURBQVcsQ0FBQTtJQUVYOzs7Ozs7Ozs7T0FTRztJQUNILCtDQUFVLENBQUE7QUFDWixDQUFDLEVBbENXLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBa0NyQjtBQWdDRDs7R0FFRztBQUNILE1BQXNCLGNBQWUsU0FBUSxlQUFTO0lBQXREOztRQTJCRTs7V0FFRztRQUNhLHlCQUFvQixHQUFHLElBQUksS0FBSyxFQUFjLENBQUM7UUFFL0Q7O1dBRUc7UUFDYSxvQkFBZSxHQUFHLElBQUksS0FBSyxFQUFjLENBQUM7SUFxRDVELENBQUM7SUFuREM7O09BRUc7SUFDSSxPQUFPLENBQUMsWUFBa0MsRUFBRTtRQUNqRCxJQUFJLFNBQVMsQ0FBQyxZQUFZLEtBQUssU0FBUyxJQUFJLFNBQVMsQ0FBQyxVQUFVLEtBQUssU0FBUyxFQUFFO1lBQzlFLE1BQU0sSUFBSSxLQUFLLENBQUMsNERBQTRELENBQUMsQ0FBQztTQUMvRTtRQUVELGlCQUFpQjtRQUNqQixJQUFJLFNBQVMsQ0FBQyxVQUFVLEtBQUssU0FBUyxFQUFFO1lBQ3RDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQy9GLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxpQkFBVSxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN2RixJQUFJLGVBQWUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO2dCQUNoQyxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixTQUFTLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQzthQUNsRTtZQUNELE9BQU8sZUFBZSxDQUFDO1NBQ3hCO1FBRUQsaUJBQWlCO1FBQ2pCLElBQUksU0FBUyxDQUFDLFlBQVksS0FBSyxTQUFTLEVBQUU7WUFBRSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7U0FBRTtRQUV6RSxPQUFPO1lBQ0wsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDM0MsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWM7WUFDekMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDeEMsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQU9EOzs7Ozs7T0FNRztJQUNJLGNBQWMsQ0FBQyxNQUFrQjtRQUN0QyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUNoQyxDQUFDO0NBRUY7QUF4RkQsd0NBd0ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0LCBJQ29uc3RydWN0LCBJRGVwZW5kYWJsZSB9IGZyb20gXCJAYXdzLWNkay9jZGtcIjtcbmltcG9ydCB7IHN1Ym5ldE5hbWUgfSBmcm9tICcuL3V0aWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElWcGNTdWJuZXQgZXh0ZW5kcyBJQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIFRoZSBBdmFpbGFiaWxpdHkgWm9uZSB0aGUgc3VibmV0IGlzIGxvY2F0ZWQgaW5cbiAgICovXG4gIHJlYWRvbmx5IGF2YWlsYWJpbGl0eVpvbmU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN1Ym5ldElkIGZvciB0aGlzIHBhcnRpY3VsYXIgc3VibmV0XG4gICAqL1xuICByZWFkb25seSBzdWJuZXRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXBlbmRhYmxlIHRoYXQgY2FuIGJlIGRlcGVuZGVkIHVwb24gdG8gZm9yY2UgaW50ZXJuZXQgY29ubmVjdGl2aXR5IGVzdGFibGlzaGVkIG9uIHRoZSBWUENcbiAgICovXG4gIHJlYWRvbmx5IGludGVybmV0Q29ubmVjdGl2aXR5RXN0YWJsaXNoZWQ6IElEZXBlbmRhYmxlO1xuXG4gIC8qKlxuICAgKiBFeHBvcnRzIHRoaXMgc3VibmV0IHRvIGFub3RoZXIgc3RhY2suXG4gICAqL1xuICBleHBvcnQoKTogVnBjU3VibmV0SW1wb3J0UHJvcHM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVZwY05ldHdvcmsgZXh0ZW5kcyBJQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIElkZW50aWZpZXIgZm9yIHRoaXMgVlBDXG4gICAqL1xuICByZWFkb25seSB2cGNJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHB1YmxpYyBzdWJuZXRzIGluIHRoaXMgVlBDXG4gICAqL1xuICByZWFkb25seSBwdWJsaWNTdWJuZXRzOiBJVnBjU3VibmV0W107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgcHJpdmF0ZSBzdWJuZXRzIGluIHRoaXMgVlBDXG4gICAqL1xuICByZWFkb25seSBwcml2YXRlU3VibmV0czogSVZwY1N1Ym5ldFtdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGlzb2xhdGVkIHN1Ym5ldHMgaW4gdGhpcyBWUENcbiAgICovXG4gIHJlYWRvbmx5IGlzb2xhdGVkU3VibmV0czogSVZwY1N1Ym5ldFtdO1xuXG4gIC8qKlxuICAgKiBBWnMgZm9yIHRoaXMgVlBDXG4gICAqL1xuICByZWFkb25seSBhdmFpbGFiaWxpdHlab25lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFJlZ2lvbiB3aGVyZSB0aGlzIFZQQyBpcyBsb2NhdGVkXG4gICAqL1xuICByZWFkb25seSB2cGNSZWdpb246IHN0cmluZztcblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBzdWJuZXRzIGFwcHJvcHJpYXRlIGZvciB0aGUgcGxhY2VtZW50IHN0cmF0ZWd5XG4gICAqL1xuICBzdWJuZXRzKHBsYWNlbWVudD86IFZwY1BsYWNlbWVudFN0cmF0ZWd5KTogSVZwY1N1Ym5ldFtdO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gd2hldGhlciB0aGUgZ2l2ZW4gc3VibmV0IGlzIG9uZSBvZiB0aGlzIFZQQydzIHB1YmxpYyBzdWJuZXRzLlxuICAgKlxuICAgKiBUaGUgc3VibmV0IG11c3QgbGl0ZXJhbGx5IGJlIG9uZSBvZiB0aGUgc3VibmV0IG9iamVjdCBvYnRhaW5lZCBmcm9tXG4gICAqIHRoaXMgVlBDLiBBIHN1Ym5ldCB0aGF0IG1lcmVseSByZXByZXNlbnRzIHRoZSBzYW1lIHN1Ym5ldCB3aWxsXG4gICAqIG5ldmVyIHJldHVybiB0cnVlLlxuICAgKi9cbiAgaXNQdWJsaWNTdWJuZXQoc3VibmV0OiBJVnBjU3VibmV0KTogYm9vbGVhbjtcblxuICAvKipcbiAgICogRXhwb3J0cyB0aGlzIFZQQyBzbyBpdCBjYW4gYmUgY29uc3VtZWQgYnkgYW5vdGhlciBzdGFjay5cbiAgICovXG4gIGV4cG9ydCgpOiBWcGNOZXR3b3JrSW1wb3J0UHJvcHM7XG59XG5cbi8qKlxuICogVGhlIHR5cGUgb2YgU3VibmV0XG4gKi9cbmV4cG9ydCBlbnVtIFN1Ym5ldFR5cGUge1xuICAvKipcbiAgICogSXNvbGF0ZWQgU3VibmV0cyBkbyBub3Qgcm91dGUgT3V0Ym91bmQgdHJhZmZpY1xuICAgKlxuICAgKiBUaGlzIGNhbiBiZSBnb29kIGZvciBzdWJuZXRzIHdpdGggUkRTIG9yXG4gICAqIEVsYXN0aWNhY2hlIGVuZHBvaW50c1xuICAgKi9cbiAgSXNvbGF0ZWQgPSAxLFxuXG4gIC8qKlxuICAgKiBTdWJuZXQgdGhhdCByb3V0ZXMgdG8gdGhlIGludGVybmV0LCBidXQgbm90IHZpY2UgdmVyc2EuXG4gICAqXG4gICAqIEluc3RhbmNlcyBpbiBhIHByaXZhdGUgc3VibmV0IGNhbiBjb25uZWN0IHRvIHRoZSBJbnRlcm5ldCwgYnV0IHdpbGwgbm90XG4gICAqIGFsbG93IGNvbm5lY3Rpb25zIHRvIGJlIGluaXRpYXRlZCBmcm9tIHRoZSBJbnRlcm5ldC5cbiAgICpcbiAgICogT3V0Ym91bmQgdHJhZmZpYyB3aWxsIGJlIHJvdXRlZCB2aWEgYSBOQVQgR2F0ZXdheS4gUHJlZmVyZW5jZSBiZWluZyBpblxuICAgKiB0aGUgc2FtZSBBWiwgYnV0IGlmIG5vdCBhdmFpbGFibGUgd2lsbCB1c2UgYW5vdGhlciBBWiAoY29udHJvbCBieVxuICAgKiBzcGVjaWZpbmcgYG1heEdhdGV3YXlzYCBvbiBWcGNOZXR3b3JrKS4gVGhpcyBtaWdodCBiZSB1c2VkIGZvclxuICAgKiBleHBlcmltZW50YWwgY29zdCBjb25zY2lvdXMgYWNjb3VudHMgb3IgYWNjb3VudHMgd2hlcmUgSEEgb3V0Ym91bmRcbiAgICogdHJhZmZpYyBpcyBub3QgbmVlZGVkLlxuICAgKi9cbiAgUHJpdmF0ZSA9IDIsXG5cbiAgLyoqXG4gICAqIFN1Ym5ldCBjb25uZWN0ZWQgdG8gdGhlIEludGVybmV0XG4gICAqXG4gICAqIEluc3RhbmNlcyBpbiBhIFB1YmxpYyBzdWJuZXQgY2FuIGNvbm5lY3QgdG8gdGhlIEludGVybmV0IGFuZCBjYW4gYmVcbiAgICogY29ubmVjdGVkIHRvIGZyb20gdGhlIEludGVybmV0IGFzIGxvbmcgYXMgdGhleSBhcmUgbGF1bmNoZWQgd2l0aCBwdWJsaWNcbiAgICogSVBzIChjb250cm9sbGVkIG9uIHRoZSBBdXRvU2NhbGluZ0dyb3VwIG9yIG90aGVyIGNvbnN0cnVjdHMgdGhhdCBsYXVuY2hcbiAgICogaW5zdGFuY2VzKS5cbiAgICpcbiAgICogUHVibGljIHN1Ym5ldHMgcm91dGUgb3V0Ym91bmQgdHJhZmZpYyB2aWEgYW4gSW50ZXJuZXQgR2F0ZXdheS5cbiAgICovXG4gIFB1YmxpYyA9IDNcbn1cblxuLyoqXG4gKiBDdXN0b21pemUgaG93IGluc3RhbmNlcyBhcmUgcGxhY2VkIGluc2lkZSBhIFZQQ1xuICpcbiAqIENvbnN0cnVjdHMgdGhhdCBhbGxvdyBjdXN0b21pemF0aW9uIG9mIFZQQyBwbGFjZW1lbnQgdXNlIHBhcmFtZXRlcnMgb2YgdGhpc1xuICogdHlwZSB0byBwcm92aWRlIHBsYWNlbWVudCBzZXR0aW5ncy5cbiAqXG4gKiBCeSBkZWZhdWx0LCB0aGUgaW5zdGFuY2VzIGFyZSBwbGFjZWQgaW4gdGhlIHByaXZhdGUgc3VibmV0cy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWcGNQbGFjZW1lbnRTdHJhdGVneSB7XG4gIC8qKlxuICAgKiBQbGFjZSB0aGUgaW5zdGFuY2VzIGluIHRoZSBzdWJuZXRzIG9mIHRoZSBnaXZlbiB0eXBlXG4gICAqXG4gICAqIEF0IG1vc3Qgb25lIG9mIGBzdWJuZXRzVG9Vc2VgIGFuZCBgc3VibmV0TmFtZWAgY2FuIGJlIHN1cHBsaWVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBTdWJuZXRUeXBlLlByaXZhdGVcbiAgICovXG4gIHN1Ym5ldHNUb1VzZT86IFN1Ym5ldFR5cGU7XG5cbiAgLyoqXG4gICAqIFBsYWNlIHRoZSBpbnN0YW5jZXMgaW4gdGhlIHN1Ym5ldHMgd2l0aCB0aGUgZ2l2ZW4gbmFtZVxuICAgKlxuICAgKiAoVGhpcyBpcyB0aGUgbmFtZSBzdXBwbGllZCBpbiBzdWJuZXRDb25maWd1cmF0aW9uKS5cbiAgICpcbiAgICogQXQgbW9zdCBvbmUgb2YgYHN1Ym5ldHNUb1VzZWAgYW5kIGBzdWJuZXROYW1lYCBjYW4gYmUgc3VwcGxpZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5hbWVcbiAgICovXG4gIHN1Ym5ldE5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBuZXcgb3IgaW1wb3J0ZWQgVlBDXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBWcGNOZXR3b3JrQmFzZSBleHRlbmRzIENvbnN0cnVjdCBpbXBsZW1lbnRzIElWcGNOZXR3b3JrIHtcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhpcyBWUENcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSB2cGNJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHB1YmxpYyBzdWJuZXRzIGluIHRoaXMgVlBDXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgcHVibGljU3VibmV0czogSVZwY1N1Ym5ldFtdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHByaXZhdGUgc3VibmV0cyBpbiB0aGlzIFZQQ1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHByaXZhdGVTdWJuZXRzOiBJVnBjU3VibmV0W107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgaXNvbGF0ZWQgc3VibmV0cyBpbiB0aGlzIFZQQ1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGlzb2xhdGVkU3VibmV0czogSVZwY1N1Ym5ldFtdO1xuXG4gIC8qKlxuICAgKiBBWnMgZm9yIHRoaXMgVlBDXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYXZhaWxhYmlsaXR5Wm9uZXM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBEZXBlbmRlbmNpZXMgZm9yIGludGVybmV0IGNvbm5lY3Rpdml0eVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGludGVybmV0RGVwZW5kZW5jaWVzID0gbmV3IEFycmF5PElDb25zdHJ1Y3Q+KCk7XG5cbiAgLyoqXG4gICAqIERlcGVuZGVuY2llcyBmb3IgTkFUIGNvbm5lY3Rpdml0eVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5hdERlcGVuZGVuY2llcyA9IG5ldyBBcnJheTxJQ29uc3RydWN0PigpO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIHN1Ym5ldHMgYXBwcm9wcmlhdGUgZm9yIHRoZSBwbGFjZW1lbnQgc3RyYXRlZ3lcbiAgICovXG4gIHB1YmxpYyBzdWJuZXRzKHBsYWNlbWVudDogVnBjUGxhY2VtZW50U3RyYXRlZ3kgPSB7fSk6IElWcGNTdWJuZXRbXSB7XG4gICAgaWYgKHBsYWNlbWVudC5zdWJuZXRzVG9Vc2UgIT09IHVuZGVmaW5lZCAmJiBwbGFjZW1lbnQuc3VibmV0TmFtZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0F0IG1vc3Qgb25lIG9mIHN1Ym5ldHNUb1VzZSBhbmQgc3VibmV0TmFtZSBjYW4gYmUgc3VwcGxpZWQnKTtcbiAgICB9XG5cbiAgICAvLyBTZWxlY3QgYnkgbmFtZVxuICAgIGlmIChwbGFjZW1lbnQuc3VibmV0TmFtZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCBhbGxTdWJuZXRzID0gdGhpcy5wcml2YXRlU3VibmV0cy5jb25jYXQodGhpcy5wdWJsaWNTdWJuZXRzKS5jb25jYXQodGhpcy5pc29sYXRlZFN1Ym5ldHMpO1xuICAgICAgY29uc3Qgc2VsZWN0ZWRTdWJuZXRzID0gYWxsU3VibmV0cy5maWx0ZXIocyA9PiBzdWJuZXROYW1lKHMpID09PSBwbGFjZW1lbnQuc3VibmV0TmFtZSk7XG4gICAgICBpZiAoc2VsZWN0ZWRTdWJuZXRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIHN1Ym5ldHMgd2l0aCBuYW1lOiAke3BsYWNlbWVudC5zdWJuZXROYW1lfWApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHNlbGVjdGVkU3VibmV0cztcbiAgICB9XG5cbiAgICAvLyBTZWxlY3QgYnkgdHlwZVxuICAgIGlmIChwbGFjZW1lbnQuc3VibmV0c1RvVXNlID09PSB1bmRlZmluZWQpIHsgcmV0dXJuIHRoaXMucHJpdmF0ZVN1Ym5ldHM7IH1cblxuICAgIHJldHVybiB7XG4gICAgICBbU3VibmV0VHlwZS5Jc29sYXRlZF06IHRoaXMuaXNvbGF0ZWRTdWJuZXRzLFxuICAgICAgW1N1Ym5ldFR5cGUuUHJpdmF0ZV06IHRoaXMucHJpdmF0ZVN1Ym5ldHMsXG4gICAgICBbU3VibmV0VHlwZS5QdWJsaWNdOiB0aGlzLnB1YmxpY1N1Ym5ldHMsXG4gICAgfVtwbGFjZW1lbnQuc3VibmV0c1RvVXNlXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBvcnQgdGhpcyBWUEMgZnJvbSB0aGUgc3RhY2tcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBleHBvcnQoKTogVnBjTmV0d29ya0ltcG9ydFByb3BzO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gd2hldGhlciB0aGUgZ2l2ZW4gc3VibmV0IGlzIG9uZSBvZiB0aGlzIFZQQydzIHB1YmxpYyBzdWJuZXRzLlxuICAgKlxuICAgKiBUaGUgc3VibmV0IG11c3QgbGl0ZXJhbGx5IGJlIG9uZSBvZiB0aGUgc3VibmV0IG9iamVjdCBvYnRhaW5lZCBmcm9tXG4gICAqIHRoaXMgVlBDLiBBIHN1Ym5ldCB0aGF0IG1lcmVseSByZXByZXNlbnRzIHRoZSBzYW1lIHN1Ym5ldCB3aWxsXG4gICAqIG5ldmVyIHJldHVybiB0cnVlLlxuICAgKi9cbiAgcHVibGljIGlzUHVibGljU3VibmV0KHN1Ym5ldDogSVZwY1N1Ym5ldCkge1xuICAgIHJldHVybiB0aGlzLnB1YmxpY1N1Ym5ldHMuaW5kZXhPZihzdWJuZXQpID4gLTE7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlZ2lvbiB3aGVyZSB0aGlzIFZQQyBpcyBkZWZpbmVkXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZwY1JlZ2lvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5vZGUuc3RhY2sucmVnaW9uO1xuICB9XG5cbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIHRoYXQgcmVmZXJlbmNlIGFuIGV4dGVybmFsIFZwY05ldHdvcmtcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWcGNOZXR3b3JrSW1wb3J0UHJvcHMge1xuICAvKipcbiAgICogVlBDJ3MgaWRlbnRpZmllclxuICAgKi9cbiAgdnBjSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBhdmFpbGFiaWxpdHkgem9uZXMgZm9yIHRoZSBzdWJuZXRzIGluIHRoaXMgVlBDLlxuICAgKi9cbiAgYXZhaWxhYmlsaXR5Wm9uZXM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHB1YmxpYyBzdWJuZXQgSURzXG4gICAqXG4gICAqIE11c3QgYmUgdW5kZWZpbmVkIG9yIG1hdGNoIHRoZSBhdmFpbGFiaWxpdHkgem9uZXMgaW4gbGVuZ3RoIGFuZCBvcmRlci5cbiAgICovXG4gIHB1YmxpY1N1Ym5ldElkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIG5hbWVzIGZvciB0aGUgcHVibGljIHN1Ym5ldHNcbiAgICpcbiAgICogTXVzdCBiZSB1bmRlZmluZWQgb3IgaGF2ZSBhIG5hbWUgZm9yIGV2ZXJ5IHB1YmxpYyBzdWJuZXQgZ3JvdXAuXG4gICAqL1xuICBwdWJsaWNTdWJuZXROYW1lcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHByaXZhdGUgc3VibmV0IElEc1xuICAgKlxuICAgKiBNdXN0IGJlIHVuZGVmaW5lZCBvciBtYXRjaCB0aGUgYXZhaWxhYmlsaXR5IHpvbmVzIGluIGxlbmd0aCBhbmQgb3JkZXIuXG4gICAqL1xuICBwcml2YXRlU3VibmV0SWRzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgbmFtZXMgZm9yIHRoZSBwcml2YXRlIHN1Ym5ldHNcbiAgICpcbiAgICogTXVzdCBiZSB1bmRlZmluZWQgb3IgaGF2ZSBhIG5hbWUgZm9yIGV2ZXJ5IHByaXZhdGUgc3VibmV0IGdyb3VwLlxuICAgKi9cbiAgcHJpdmF0ZVN1Ym5ldE5hbWVzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgaXNvbGF0ZWQgc3VibmV0IElEc1xuICAgKlxuICAgKiBNdXN0IGJlIHVuZGVmaW5lZCBvciBtYXRjaCB0aGUgYXZhaWxhYmlsaXR5IHpvbmVzIGluIGxlbmd0aCBhbmQgb3JkZXIuXG4gICAqL1xuICBpc29sYXRlZFN1Ym5ldElkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIG5hbWVzIGZvciB0aGUgaXNvbGF0ZWQgc3VibmV0c1xuICAgKlxuICAgKiBNdXN0IGJlIHVuZGVmaW5lZCBvciBoYXZlIGEgbmFtZSBmb3IgZXZlcnkgaXNvbGF0ZWQgc3VibmV0IGdyb3VwLlxuICAgKi9cbiAgaXNvbGF0ZWRTdWJuZXROYW1lcz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZwY1N1Ym5ldEltcG9ydFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBBdmFpbGFiaWxpdHkgWm9uZSB0aGUgc3VibmV0IGlzIGxvY2F0ZWQgaW5cbiAgICovXG4gIGF2YWlsYWJpbGl0eVpvbmU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN1Ym5ldElkIGZvciB0aGlzIHBhcnRpY3VsYXIgc3VibmV0XG4gICAqL1xuICBzdWJuZXRJZDogc3RyaW5nO1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnBjLXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInZwYy1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzQ0FBa0U7QUFDbEUsaUNBQW9DO0FBQ3BDLCtCQUE0RDtBQXFGNUQ7O0dBRUc7QUFDSCxJQUFZLFVBa0NYO0FBbENELFdBQVksVUFBVTtJQUNwQjs7Ozs7T0FLRztJQUNILG1EQUFZLENBQUE7SUFFWjs7Ozs7Ozs7Ozs7T0FXRztJQUNILGlEQUFXLENBQUE7SUFFWDs7Ozs7Ozs7O09BU0c7SUFDSCwrQ0FBVSxDQUFBO0FBQ1osQ0FBQyxFQWxDVyxVQUFVLEdBQVYsa0JBQVUsS0FBVixrQkFBVSxRQWtDckI7QUFnQ0Q7O0dBRUc7QUFDSCxNQUFzQixjQUFlLFNBQVEsZUFBUztJQUF0RDs7UUFnQ0U7O1dBRUc7UUFDYSx5QkFBb0IsR0FBRyxJQUFJLEtBQUssRUFBYyxDQUFDO1FBRS9EOztXQUVHO1FBQ2Esb0JBQWUsR0FBRyxJQUFJLEtBQUssRUFBYyxDQUFDO0lBK0Q1RCxDQUFDO0lBN0RDOztPQUVHO0lBQ0ksT0FBTyxDQUFDLFlBQWtDLEVBQUU7UUFDakQsSUFBSSxTQUFTLENBQUMsWUFBWSxLQUFLLFNBQVMsSUFBSSxTQUFTLENBQUMsVUFBVSxLQUFLLFNBQVMsRUFBRTtZQUM5RSxNQUFNLElBQUksS0FBSyxDQUFDLDREQUE0RCxDQUFDLENBQUM7U0FDL0U7UUFFRCxpQkFBaUI7UUFDakIsSUFBSSxTQUFTLENBQUMsVUFBVSxLQUFLLFNBQVMsRUFBRTtZQUN0QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUMvRixNQUFNLGVBQWUsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsaUJBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkYsSUFBSSxlQUFlLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7YUFDbEU7WUFDRCxPQUFPLGVBQWUsQ0FBQztTQUN4QjtRQUVELGlCQUFpQjtRQUNqQixJQUFJLFNBQVMsQ0FBQyxZQUFZLEtBQUssU0FBUyxFQUFFO1lBQUUsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO1NBQUU7UUFFekUsT0FBTztZQUNMLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQzNDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksQ0FBQyxjQUFjO1lBQ3pDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQ3hDLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7T0FFRztJQUNJLGdCQUFnQixDQUFDLEVBQVUsRUFBRSxPQUE2QjtRQUMvRCxPQUFPLElBQUksbUJBQWEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxrQkFDL0IsR0FBRyxFQUFFLElBQUksSUFDTixPQUFPLEVBQ1YsQ0FBQztJQUNMLENBQUM7SUFPRDs7Ozs7O09BTUc7SUFDSSxjQUFjLENBQUMsTUFBa0I7UUFDdEMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDaEMsQ0FBQztDQUVGO0FBdkdELHdDQXVHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCwgSUNvbnN0cnVjdCwgSURlcGVuZGFibGUgfSBmcm9tIFwiQGF3cy1jZGsvY2RrXCI7XG5pbXBvcnQgeyBzdWJuZXROYW1lIH0gZnJvbSAnLi91dGlsJztcbmltcG9ydCB7IFZwbkNvbm5lY3Rpb24sIFZwbkNvbm5lY3Rpb25PcHRpb25zIH0gZnJvbSAnLi92cG4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIElWcGNTdWJuZXQgZXh0ZW5kcyBJQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIFRoZSBBdmFpbGFiaWxpdHkgWm9uZSB0aGUgc3VibmV0IGlzIGxvY2F0ZWQgaW5cbiAgICovXG4gIHJlYWRvbmx5IGF2YWlsYWJpbGl0eVpvbmU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN1Ym5ldElkIGZvciB0aGlzIHBhcnRpY3VsYXIgc3VibmV0XG4gICAqL1xuICByZWFkb25seSBzdWJuZXRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXBlbmRhYmxlIHRoYXQgY2FuIGJlIGRlcGVuZGVkIHVwb24gdG8gZm9yY2UgaW50ZXJuZXQgY29ubmVjdGl2aXR5IGVzdGFibGlzaGVkIG9uIHRoZSBWUENcbiAgICovXG4gIHJlYWRvbmx5IGludGVybmV0Q29ubmVjdGl2aXR5RXN0YWJsaXNoZWQ6IElEZXBlbmRhYmxlO1xuXG4gIC8qKlxuICAgKiBFeHBvcnRzIHRoaXMgc3VibmV0IHRvIGFub3RoZXIgc3RhY2suXG4gICAqL1xuICBleHBvcnQoKTogVnBjU3VibmV0SW1wb3J0UHJvcHM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVZwY05ldHdvcmsgZXh0ZW5kcyBJQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIElkZW50aWZpZXIgZm9yIHRoaXMgVlBDXG4gICAqL1xuICByZWFkb25seSB2cGNJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHB1YmxpYyBzdWJuZXRzIGluIHRoaXMgVlBDXG4gICAqL1xuICByZWFkb25seSBwdWJsaWNTdWJuZXRzOiBJVnBjU3VibmV0W107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgcHJpdmF0ZSBzdWJuZXRzIGluIHRoaXMgVlBDXG4gICAqL1xuICByZWFkb25seSBwcml2YXRlU3VibmV0czogSVZwY1N1Ym5ldFtdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGlzb2xhdGVkIHN1Ym5ldHMgaW4gdGhpcyBWUENcbiAgICovXG4gIHJlYWRvbmx5IGlzb2xhdGVkU3VibmV0czogSVZwY1N1Ym5ldFtdO1xuXG4gIC8qKlxuICAgKiBBWnMgZm9yIHRoaXMgVlBDXG4gICAqL1xuICByZWFkb25seSBhdmFpbGFiaWxpdHlab25lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFJlZ2lvbiB3aGVyZSB0aGlzIFZQQyBpcyBsb2NhdGVkXG4gICAqL1xuICByZWFkb25seSB2cGNSZWdpb246IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIFZQTiBnYXRld2F5XG4gICAqL1xuICByZWFkb25seSB2cG5HYXRld2F5SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgc3VibmV0cyBhcHByb3ByaWF0ZSBmb3IgdGhlIHBsYWNlbWVudCBzdHJhdGVneVxuICAgKi9cbiAgc3VibmV0cyhwbGFjZW1lbnQ/OiBWcGNQbGFjZW1lbnRTdHJhdGVneSk6IElWcGNTdWJuZXRbXTtcblxuICAvKipcbiAgICogUmV0dXJuIHdoZXRoZXIgdGhlIGdpdmVuIHN1Ym5ldCBpcyBvbmUgb2YgdGhpcyBWUEMncyBwdWJsaWMgc3VibmV0cy5cbiAgICpcbiAgICogVGhlIHN1Ym5ldCBtdXN0IGxpdGVyYWxseSBiZSBvbmUgb2YgdGhlIHN1Ym5ldCBvYmplY3Qgb2J0YWluZWQgZnJvbVxuICAgKiB0aGlzIFZQQy4gQSBzdWJuZXQgdGhhdCBtZXJlbHkgcmVwcmVzZW50cyB0aGUgc2FtZSBzdWJuZXQgd2lsbFxuICAgKiBuZXZlciByZXR1cm4gdHJ1ZS5cbiAgICovXG4gIGlzUHVibGljU3VibmV0KHN1Ym5ldDogSVZwY1N1Ym5ldCk6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBuZXcgVlBOIGNvbm5lY3Rpb24gdG8gdGhpcyBWUENcbiAgICovXG4gIGFkZFZwbkNvbm5lY3Rpb24oaWQ6IHN0cmluZywgb3B0aW9uczogVnBuQ29ubmVjdGlvbk9wdGlvbnMpOiBWcG5Db25uZWN0aW9uO1xuXG4gIC8qKlxuICAgKiBFeHBvcnRzIHRoaXMgVlBDIHNvIGl0IGNhbiBiZSBjb25zdW1lZCBieSBhbm90aGVyIHN0YWNrLlxuICAgKi9cbiAgZXhwb3J0KCk6IFZwY05ldHdvcmtJbXBvcnRQcm9wcztcbn1cblxuLyoqXG4gKiBUaGUgdHlwZSBvZiBTdWJuZXRcbiAqL1xuZXhwb3J0IGVudW0gU3VibmV0VHlwZSB7XG4gIC8qKlxuICAgKiBJc29sYXRlZCBTdWJuZXRzIGRvIG5vdCByb3V0ZSBPdXRib3VuZCB0cmFmZmljXG4gICAqXG4gICAqIFRoaXMgY2FuIGJlIGdvb2QgZm9yIHN1Ym5ldHMgd2l0aCBSRFMgb3JcbiAgICogRWxhc3RpY2FjaGUgZW5kcG9pbnRzXG4gICAqL1xuICBJc29sYXRlZCA9IDEsXG5cbiAgLyoqXG4gICAqIFN1Ym5ldCB0aGF0IHJvdXRlcyB0byB0aGUgaW50ZXJuZXQsIGJ1dCBub3QgdmljZSB2ZXJzYS5cbiAgICpcbiAgICogSW5zdGFuY2VzIGluIGEgcHJpdmF0ZSBzdWJuZXQgY2FuIGNvbm5lY3QgdG8gdGhlIEludGVybmV0LCBidXQgd2lsbCBub3RcbiAgICogYWxsb3cgY29ubmVjdGlvbnMgdG8gYmUgaW5pdGlhdGVkIGZyb20gdGhlIEludGVybmV0LlxuICAgKlxuICAgKiBPdXRib3VuZCB0cmFmZmljIHdpbGwgYmUgcm91dGVkIHZpYSBhIE5BVCBHYXRld2F5LiBQcmVmZXJlbmNlIGJlaW5nIGluXG4gICAqIHRoZSBzYW1lIEFaLCBidXQgaWYgbm90IGF2YWlsYWJsZSB3aWxsIHVzZSBhbm90aGVyIEFaIChjb250cm9sIGJ5XG4gICAqIHNwZWNpZmluZyBgbWF4R2F0ZXdheXNgIG9uIFZwY05ldHdvcmspLiBUaGlzIG1pZ2h0IGJlIHVzZWQgZm9yXG4gICAqIGV4cGVyaW1lbnRhbCBjb3N0IGNvbnNjaW91cyBhY2NvdW50cyBvciBhY2NvdW50cyB3aGVyZSBIQSBvdXRib3VuZFxuICAgKiB0cmFmZmljIGlzIG5vdCBuZWVkZWQuXG4gICAqL1xuICBQcml2YXRlID0gMixcblxuICAvKipcbiAgICogU3VibmV0IGNvbm5lY3RlZCB0byB0aGUgSW50ZXJuZXRcbiAgICpcbiAgICogSW5zdGFuY2VzIGluIGEgUHVibGljIHN1Ym5ldCBjYW4gY29ubmVjdCB0byB0aGUgSW50ZXJuZXQgYW5kIGNhbiBiZVxuICAgKiBjb25uZWN0ZWQgdG8gZnJvbSB0aGUgSW50ZXJuZXQgYXMgbG9uZyBhcyB0aGV5IGFyZSBsYXVuY2hlZCB3aXRoIHB1YmxpY1xuICAgKiBJUHMgKGNvbnRyb2xsZWQgb24gdGhlIEF1dG9TY2FsaW5nR3JvdXAgb3Igb3RoZXIgY29uc3RydWN0cyB0aGF0IGxhdW5jaFxuICAgKiBpbnN0YW5jZXMpLlxuICAgKlxuICAgKiBQdWJsaWMgc3VibmV0cyByb3V0ZSBvdXRib3VuZCB0cmFmZmljIHZpYSBhbiBJbnRlcm5ldCBHYXRld2F5LlxuICAgKi9cbiAgUHVibGljID0gM1xufVxuXG4vKipcbiAqIEN1c3RvbWl6ZSBob3cgaW5zdGFuY2VzIGFyZSBwbGFjZWQgaW5zaWRlIGEgVlBDXG4gKlxuICogQ29uc3RydWN0cyB0aGF0IGFsbG93IGN1c3RvbWl6YXRpb24gb2YgVlBDIHBsYWNlbWVudCB1c2UgcGFyYW1ldGVycyBvZiB0aGlzXG4gKiB0eXBlIHRvIHByb3ZpZGUgcGxhY2VtZW50IHNldHRpbmdzLlxuICpcbiAqIEJ5IGRlZmF1bHQsIHRoZSBpbnN0YW5jZXMgYXJlIHBsYWNlZCBpbiB0aGUgcHJpdmF0ZSBzdWJuZXRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZwY1BsYWNlbWVudFN0cmF0ZWd5IHtcbiAgLyoqXG4gICAqIFBsYWNlIHRoZSBpbnN0YW5jZXMgaW4gdGhlIHN1Ym5ldHMgb2YgdGhlIGdpdmVuIHR5cGVcbiAgICpcbiAgICogQXQgbW9zdCBvbmUgb2YgYHN1Ym5ldHNUb1VzZWAgYW5kIGBzdWJuZXROYW1lYCBjYW4gYmUgc3VwcGxpZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IFN1Ym5ldFR5cGUuUHJpdmF0ZVxuICAgKi9cbiAgc3VibmV0c1RvVXNlPzogU3VibmV0VHlwZTtcblxuICAvKipcbiAgICogUGxhY2UgdGhlIGluc3RhbmNlcyBpbiB0aGUgc3VibmV0cyB3aXRoIHRoZSBnaXZlbiBuYW1lXG4gICAqXG4gICAqIChUaGlzIGlzIHRoZSBuYW1lIHN1cHBsaWVkIGluIHN1Ym5ldENvbmZpZ3VyYXRpb24pLlxuICAgKlxuICAgKiBBdCBtb3N0IG9uZSBvZiBgc3VibmV0c1RvVXNlYCBhbmQgYHN1Ym5ldE5hbWVgIGNhbiBiZSBzdXBwbGllZC5cbiAgICpcbiAgICogQGRlZmF1bHQgbmFtZVxuICAgKi9cbiAgc3VibmV0TmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIG5ldyBvciBpbXBvcnRlZCBWUENcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFZwY05ldHdvcmtCYXNlIGV4dGVuZHMgQ29uc3RydWN0IGltcGxlbWVudHMgSVZwY05ldHdvcmsge1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGlzIFZQQ1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHZwY0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgcHVibGljIHN1Ym5ldHMgaW4gdGhpcyBWUENcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBwdWJsaWNTdWJuZXRzOiBJVnBjU3VibmV0W107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgcHJpdmF0ZSBzdWJuZXRzIGluIHRoaXMgVlBDXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgcHJpdmF0ZVN1Ym5ldHM6IElWcGNTdWJuZXRbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiBpc29sYXRlZCBzdWJuZXRzIGluIHRoaXMgVlBDXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgaXNvbGF0ZWRTdWJuZXRzOiBJVnBjU3VibmV0W107XG5cbiAgLyoqXG4gICAqIEFacyBmb3IgdGhpcyBWUENcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBhdmFpbGFiaWxpdHlab25lczogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIElkZW50aWZpZXIgZm9yIHRoZSBWUE4gZ2F0ZXdheVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHZwbkdhdGV3YXlJZD86IHN0cmluZztcblxuICAvKipcbiAgICogRGVwZW5kZW5jaWVzIGZvciBpbnRlcm5ldCBjb25uZWN0aXZpdHlcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpbnRlcm5ldERlcGVuZGVuY2llcyA9IG5ldyBBcnJheTxJQ29uc3RydWN0PigpO1xuXG4gIC8qKlxuICAgKiBEZXBlbmRlbmNpZXMgZm9yIE5BVCBjb25uZWN0aXZpdHlcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBuYXREZXBlbmRlbmNpZXMgPSBuZXcgQXJyYXk8SUNvbnN0cnVjdD4oKTtcblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBzdWJuZXRzIGFwcHJvcHJpYXRlIGZvciB0aGUgcGxhY2VtZW50IHN0cmF0ZWd5XG4gICAqL1xuICBwdWJsaWMgc3VibmV0cyhwbGFjZW1lbnQ6IFZwY1BsYWNlbWVudFN0cmF0ZWd5ID0ge30pOiBJVnBjU3VibmV0W10ge1xuICAgIGlmIChwbGFjZW1lbnQuc3VibmV0c1RvVXNlICE9PSB1bmRlZmluZWQgJiYgcGxhY2VtZW50LnN1Ym5ldE5hbWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdCBtb3N0IG9uZSBvZiBzdWJuZXRzVG9Vc2UgYW5kIHN1Ym5ldE5hbWUgY2FuIGJlIHN1cHBsaWVkJyk7XG4gICAgfVxuXG4gICAgLy8gU2VsZWN0IGJ5IG5hbWVcbiAgICBpZiAocGxhY2VtZW50LnN1Ym5ldE5hbWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3QgYWxsU3VibmV0cyA9IHRoaXMucHJpdmF0ZVN1Ym5ldHMuY29uY2F0KHRoaXMucHVibGljU3VibmV0cykuY29uY2F0KHRoaXMuaXNvbGF0ZWRTdWJuZXRzKTtcbiAgICAgIGNvbnN0IHNlbGVjdGVkU3VibmV0cyA9IGFsbFN1Ym5ldHMuZmlsdGVyKHMgPT4gc3VibmV0TmFtZShzKSA9PT0gcGxhY2VtZW50LnN1Ym5ldE5hbWUpO1xuICAgICAgaWYgKHNlbGVjdGVkU3VibmV0cy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBzdWJuZXRzIHdpdGggbmFtZTogJHtwbGFjZW1lbnQuc3VibmV0TmFtZX1gKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBzZWxlY3RlZFN1Ym5ldHM7XG4gICAgfVxuXG4gICAgLy8gU2VsZWN0IGJ5IHR5cGVcbiAgICBpZiAocGxhY2VtZW50LnN1Ym5ldHNUb1VzZSA9PT0gdW5kZWZpbmVkKSB7IHJldHVybiB0aGlzLnByaXZhdGVTdWJuZXRzOyB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgW1N1Ym5ldFR5cGUuSXNvbGF0ZWRdOiB0aGlzLmlzb2xhdGVkU3VibmV0cyxcbiAgICAgIFtTdWJuZXRUeXBlLlByaXZhdGVdOiB0aGlzLnByaXZhdGVTdWJuZXRzLFxuICAgICAgW1N1Ym5ldFR5cGUuUHVibGljXTogdGhpcy5wdWJsaWNTdWJuZXRzLFxuICAgIH1bcGxhY2VtZW50LnN1Ym5ldHNUb1VzZV07XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIG5ldyBWUE4gY29ubmVjdGlvbiB0byB0aGlzIFZQQ1xuICAgKi9cbiAgcHVibGljIGFkZFZwbkNvbm5lY3Rpb24oaWQ6IHN0cmluZywgb3B0aW9uczogVnBuQ29ubmVjdGlvbk9wdGlvbnMpOiBWcG5Db25uZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFZwbkNvbm5lY3Rpb24odGhpcywgaWQsIHtcbiAgICAgIHZwYzogdGhpcyxcbiAgICAgIC4uLm9wdGlvbnNcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBvcnQgdGhpcyBWUEMgZnJvbSB0aGUgc3RhY2tcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBleHBvcnQoKTogVnBjTmV0d29ya0ltcG9ydFByb3BzO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gd2hldGhlciB0aGUgZ2l2ZW4gc3VibmV0IGlzIG9uZSBvZiB0aGlzIFZQQydzIHB1YmxpYyBzdWJuZXRzLlxuICAgKlxuICAgKiBUaGUgc3VibmV0IG11c3QgbGl0ZXJhbGx5IGJlIG9uZSBvZiB0aGUgc3VibmV0IG9iamVjdCBvYnRhaW5lZCBmcm9tXG4gICAqIHRoaXMgVlBDLiBBIHN1Ym5ldCB0aGF0IG1lcmVseSByZXByZXNlbnRzIHRoZSBzYW1lIHN1Ym5ldCB3aWxsXG4gICAqIG5ldmVyIHJldHVybiB0cnVlLlxuICAgKi9cbiAgcHVibGljIGlzUHVibGljU3VibmV0KHN1Ym5ldDogSVZwY1N1Ym5ldCkge1xuICAgIHJldHVybiB0aGlzLnB1YmxpY1N1Ym5ldHMuaW5kZXhPZihzdWJuZXQpID4gLTE7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJlZ2lvbiB3aGVyZSB0aGlzIFZQQyBpcyBkZWZpbmVkXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZwY1JlZ2lvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5vZGUuc3RhY2sucmVnaW9uO1xuICB9XG5cbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIHRoYXQgcmVmZXJlbmNlIGFuIGV4dGVybmFsIFZwY05ldHdvcmtcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWcGNOZXR3b3JrSW1wb3J0UHJvcHMge1xuICAvKipcbiAgICogVlBDJ3MgaWRlbnRpZmllclxuICAgKi9cbiAgdnBjSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBhdmFpbGFiaWxpdHkgem9uZXMgZm9yIHRoZSBzdWJuZXRzIGluIHRoaXMgVlBDLlxuICAgKi9cbiAgYXZhaWxhYmlsaXR5Wm9uZXM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHB1YmxpYyBzdWJuZXQgSURzXG4gICAqXG4gICAqIE11c3QgYmUgdW5kZWZpbmVkIG9yIG1hdGNoIHRoZSBhdmFpbGFiaWxpdHkgem9uZXMgaW4gbGVuZ3RoIGFuZCBvcmRlci5cbiAgICovXG4gIHB1YmxpY1N1Ym5ldElkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIG5hbWVzIGZvciB0aGUgcHVibGljIHN1Ym5ldHNcbiAgICpcbiAgICogTXVzdCBiZSB1bmRlZmluZWQgb3IgaGF2ZSBhIG5hbWUgZm9yIGV2ZXJ5IHB1YmxpYyBzdWJuZXQgZ3JvdXAuXG4gICAqL1xuICBwdWJsaWNTdWJuZXROYW1lcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHByaXZhdGUgc3VibmV0IElEc1xuICAgKlxuICAgKiBNdXN0IGJlIHVuZGVmaW5lZCBvciBtYXRjaCB0aGUgYXZhaWxhYmlsaXR5IHpvbmVzIGluIGxlbmd0aCBhbmQgb3JkZXIuXG4gICAqL1xuICBwcml2YXRlU3VibmV0SWRzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgbmFtZXMgZm9yIHRoZSBwcml2YXRlIHN1Ym5ldHNcbiAgICpcbiAgICogTXVzdCBiZSB1bmRlZmluZWQgb3IgaGF2ZSBhIG5hbWUgZm9yIGV2ZXJ5IHByaXZhdGUgc3VibmV0IGdyb3VwLlxuICAgKi9cbiAgcHJpdmF0ZVN1Ym5ldE5hbWVzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgaXNvbGF0ZWQgc3VibmV0IElEc1xuICAgKlxuICAgKiBNdXN0IGJlIHVuZGVmaW5lZCBvciBtYXRjaCB0aGUgYXZhaWxhYmlsaXR5IHpvbmVzIGluIGxlbmd0aCBhbmQgb3JkZXIuXG4gICAqL1xuICBpc29sYXRlZFN1Ym5ldElkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIG5hbWVzIGZvciB0aGUgaXNvbGF0ZWQgc3VibmV0c1xuICAgKlxuICAgKiBNdXN0IGJlIHVuZGVmaW5lZCBvciBoYXZlIGEgbmFtZSBmb3IgZXZlcnkgaXNvbGF0ZWQgc3VibmV0IGdyb3VwLlxuICAgKi9cbiAgaXNvbGF0ZWRTdWJuZXROYW1lcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBWUE4gZ2F0ZXdheSdzIGlkZW50aWZpZXJcbiAgICovXG4gIHZwbkdhdGV3YXlJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWcGNTdWJuZXRJbXBvcnRQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgQXZhaWxhYmlsaXR5IFpvbmUgdGhlIHN1Ym5ldCBpcyBsb2NhdGVkIGluXG4gICAqL1xuICBhdmFpbGFiaWxpdHlab25lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdWJuZXRJZCBmb3IgdGhpcyBwYXJ0aWN1bGFyIHN1Ym5ldFxuICAgKi9cbiAgc3VibmV0SWQ6IHN0cmluZztcbn1cbiJdfQ== |
@@ -7,2 +7,3 @@ import cdk = require('@aws-cdk/cdk'); | ||
import { IVpcNetwork, IVpcSubnet, SubnetType, VpcNetworkBase, VpcNetworkImportProps, VpcPlacementStrategy, VpcSubnetImportProps } from './vpc-ref'; | ||
import { VpnConnectionOptions } from './vpn'; | ||
/** | ||
@@ -103,2 +104,28 @@ * VpcNetworkProps allows you to specify configuration options for a VPC | ||
subnetConfiguration?: SubnetConfiguration[]; | ||
/** | ||
* Indicates whether a VPN gateway should be created and attached to this VPC. | ||
* | ||
* @default true when vpnGatewayAsn or vpnConnections is specified. | ||
*/ | ||
vpnGateway?: boolean; | ||
/** | ||
* The private Autonomous System Number (ASN) for the VPN gateway. | ||
* | ||
* @default Amazon default ASN | ||
*/ | ||
vpnGatewayAsn?: number; | ||
/** | ||
* VPN connections to this VPC. | ||
* | ||
* @default no connections | ||
*/ | ||
vpnConnections?: { | ||
[id: string]: VpnConnectionOptions; | ||
}; | ||
/** | ||
* Where to propagate VPN routes. | ||
* | ||
* @default on the route tables associated with private subnets | ||
*/ | ||
vpnRoutePropagation?: SubnetType[]; | ||
} | ||
@@ -209,2 +236,6 @@ /** | ||
/** | ||
* Identifier for the VPN gateway | ||
*/ | ||
readonly vpnGatewayId?: string; | ||
/** | ||
* The VPC resource | ||
@@ -287,3 +318,3 @@ */ | ||
*/ | ||
private readonly routeTableId; | ||
readonly routeTableId: string; | ||
private readonly internetDependencies; | ||
@@ -290,0 +321,0 @@ constructor(scope: cdk.Construct, id: string, props: VpcSubnetProps); |
{ | ||
"name": "@aws-cdk/aws-ec2", | ||
"version": "0.25.1", | ||
"version": "0.25.2", | ||
"description": "CDK Constructs for AWS EC2", | ||
@@ -57,17 +57,17 @@ "main": "lib/index.js", | ||
"devDependencies": { | ||
"@aws-cdk/assert": "^0.25.1", | ||
"cdk-build-tools": "^0.25.1", | ||
"cdk-integ-tools": "^0.25.1", | ||
"cfn2ts": "^0.25.1", | ||
"pkglint": "^0.25.1" | ||
"@aws-cdk/assert": "^0.25.2", | ||
"cdk-build-tools": "^0.25.2", | ||
"cdk-integ-tools": "^0.25.2", | ||
"cfn2ts": "^0.25.2", | ||
"pkglint": "^0.25.2" | ||
}, | ||
"dependencies": { | ||
"@aws-cdk/aws-iam": "^0.25.1", | ||
"@aws-cdk/cdk": "^0.25.1", | ||
"@aws-cdk/cx-api": "^0.25.1" | ||
"@aws-cdk/aws-iam": "^0.25.2", | ||
"@aws-cdk/cdk": "^0.25.2", | ||
"@aws-cdk/cx-api": "^0.25.2" | ||
}, | ||
"homepage": "https://github.com/awslabs/aws-cdk", | ||
"peerDependencies": { | ||
"@aws-cdk/cdk": "^0.25.1", | ||
"@aws-cdk/cx-api": "^0.25.1" | ||
"@aws-cdk/cdk": "^0.25.2", | ||
"@aws-cdk/cx-api": "^0.25.2" | ||
}, | ||
@@ -74,0 +74,0 @@ "engines": { |
@@ -306,1 +306,39 @@ ## AWS Compute and Networking Construct Library | ||
> We will add command-line options to make this step easier in the future. | ||
### VPN connections to a VPC | ||
Create your VPC with VPN connections by specifying the `vpnConnections` props (keys are construct `id`s): | ||
```ts | ||
const vpc = new ec2.VpcNetwork(stack, 'MyVpc', { | ||
vpnConnections: { | ||
dynamic: { // Dynamic routing (BGP) | ||
ip: '1.2.3.4' | ||
}, | ||
static: { // Static routing | ||
ip: '4.5.6.7', | ||
staticRoutes: [ | ||
'192.168.10.0/24', | ||
'192.168.20.0/24' | ||
] | ||
} | ||
} | ||
}); | ||
``` | ||
To create a VPC that can accept VPN connections, set `vpnGateway` to `true`: | ||
```ts | ||
const vpc = new ec2.VpcNetwork(stack, 'MyVpc', { | ||
vpnGateway: true | ||
}); | ||
``` | ||
VPN connections can then be added: | ||
```ts | ||
vpc.addVpnConnection('Dynamic', { | ||
ip: '1.2.3.4' | ||
}); | ||
``` | ||
Routes will be propagated on the route tables associated with the private subnets. |
@@ -23,2 +23,7 @@ import { Test } from 'nodeunit'; | ||
'with mis-matched nat and subnet configs it throws'(test: Test): void; | ||
'with a vpn gateway'(test: Test): void; | ||
'with a vpn gateway and route propagation on isolated subnets'(test: Test): void; | ||
'with a vpn gateway and route propagation on private and isolated subnets'(test: Test): void; | ||
'fails when specifying vpnConnections with vpnGateway set to false'(test: Test): void; | ||
'fails when specifying vpnGatewayAsn with vpnGateway set to false'(test: Test): void; | ||
}; | ||
@@ -25,0 +30,0 @@ "When creating a VPC with a custom CIDR range": { |
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
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
2756940
58
18628
344
1
Updated@aws-cdk/aws-iam@^0.25.2
Updated@aws-cdk/cdk@^0.25.2
Updated@aws-cdk/cx-api@^0.25.2