@csermet/multiprovider
Version:
cloud-graph provider plugin for AWS used to fetch AWS cloud data.
42 lines (41 loc) • 1.54 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const sdk_1 = require("@cloudgraph/sdk");
const format_1 = require("../../utils/format");
const generateArns_1 = require("../../utils/generateArns");
/**
* SystemsManagerDocument
*/
exports.default = ({ account, service: rawData, region, }) => {
const { Name: name, CreatedDate: createdDate, Owner: owner, PlatformTypes: platformTypes, DocumentVersion: documentVersion, DocumentType: documentType, SchemaVersion: schemaVersion, DocumentFormat: documentFormat, TargetType: targetType, Tags: tags, permissions, } = rawData;
const arn = generateArns_1.ssmDocumentArn({ region, account, name });
const formattedPermissions = {
accountIds: permissions?.accountIds,
accountSharingInfoList: permissions?.accountSharingInfoList?.map(({ AccountId, SharedDocumentVersion }) => ({
id: sdk_1.generateUniqueId({
arn,
AccountId,
SharedDocumentVersion,
}),
accountId: AccountId,
sharedDocumentVersion: SharedDocumentVersion,
})),
};
return {
id: arn,
arn,
region,
accountId: account,
name,
createdDate: createdDate?.toISOString(),
owner,
platformTypes,
documentVersion,
documentType,
schemaVersion,
documentFormat,
targetType,
tags: format_1.formatTagsFromMap(tags ?? {}),
permissions: formattedPermissions,
};
};