UNPKG

@csermet/multiprovider

Version:

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

37 lines (36 loc) 1.43 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")); /** * Client Vpn Endpoint */ exports.default = ({ service: clientVpnEndpoint, data, region, }) => { const connections = []; const { ClientVpnEndpointId: id, SecurityGroupIds: securityGroupIds, } = clientVpnEndpoint; /** * Find Security Groups * related to this Client Vpn Endpoint */ const securityGroups = data.find(({ name }) => name === services_1.default.sg); if (securityGroups?.data?.[region]) { const associatedSecurityGroups = securityGroups.data[region].filter(({ GroupId }) => securityGroupIds.includes(GroupId)); if (!isEmpty_1.default(associatedSecurityGroups)) { for (const securityGroup of associatedSecurityGroups) { connections.push({ id: securityGroup.GroupId, resourceType: services_1.default.sg, relation: 'child', field: 'securityGroups', }); } } } const clientVpnEndpointResult = { [id]: connections, }; return clientVpnEndpointResult; };