UNPKG

@csermet/multiprovider

Version:

cloud-graph provider plugin for AWS used to fetch AWS cloud data.

38 lines (37 loc) 1.34 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const isEmpty_1 = __importDefault(require("lodash/isEmpty")); const services_1 = __importDefault(require("../../enums/services")); /** * Vpn Gateway */ exports.default = ({ service: vpnGateway, data, region, }) => { const connections = []; const { VpnGatewayId: id, VpcAttachments: vpcAttachments } = vpnGateway; /** * Find VPCs * related to this Vpn Gateway */ const vpcs = data.find(({ name }) => name === services_1.default.vpc); const vpcIds = vpcAttachments?.map(({ VpcId }) => VpcId); if (vpcs?.data?.[region] && vpcIds?.length > 0) { const associatedVPCs = vpcs.data[region].filter(({ VpcId }) => vpcIds.includes(VpcId)); if (!isEmpty_1.default(associatedVPCs)) { for (const vpc of associatedVPCs) { connections.push({ id: vpc.VpcId, resourceType: services_1.default.vpc, relation: 'child', field: 'vpc', }); } } } const vpnGatewayResult = { [id]: connections, }; return vpnGatewayResult; };