UNPKG

heat-sfdx-metadata

Version:

![MIT License](http://img.shields.io/badge/license-MIT-blue.svg?style=flat) [![npm version](https://badge.fury.io/js/heat-sfdx-metadata.svg)](https://badge.fury.io/js/heat-sfdx-metadata) [![Code Climate](https://codeclimate.com/github/takahitomiyamoto/hea

84 lines 2.81 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.extractMetadataTypes = void 0; /** * @name extract-metadata-types.ts * @description extractMetadataTypes */ const heat_sfdx_common_1 = require("heat-sfdx-common"); const common_1 = require("../../common"); /** * @name _getXmlName */ const _getXmlName = (object, folder) => { if (folder) { return common_1.METADATA_TYPE2FOLDER_MAP[object.xmlName]; } else { return object.xmlName; } }; /** * @name _getChildXmlNames */ const _getChildXmlNames = (object, folder) => { if (!object.childXmlNames) { return []; } return object.childXmlNames; }; /** * @name _extractMetadataTypes */ const _extractMetadataTypes = (config, metadataObjects, path, inFolder, folder) => { const objects = metadataObjects; const metadataTypesObj = objects.filter((object) => inFolder === object.inFolder); // xmlName let metadataTypes = metadataTypesObj.map((object) => _getXmlName(object, folder)); metadataTypes.sort(); // childXmlNames let childMetadataTypes = []; if (config.child) { metadataTypesObj.forEach((object) => { childMetadataTypes = childMetadataTypes.concat(_getChildXmlNames(object, folder)); }); metadataTypes = metadataTypes.concat(childMetadataTypes); metadataTypes.sort(); } (0, heat_sfdx_common_1.writeFileSyncUtf8)(path, JSON.stringify(metadataTypes)); }; /** * @name extractMetadataTypesNoFolder * @description extractMetadataTypes (no folder) */ const extractMetadataTypesNoFolder = (metadataObjects, config) => { _extractMetadataTypes(config, metadataObjects, config.metadataTypesNoFolder, false, false); }; /** * @name extractMetadataTypesFolder * @description extractMetadataTypes (folder) */ const extractMetadataTypesFolder = (metadataObjects, config) => { _extractMetadataTypes(config, metadataObjects, config.metadataTypesFolder, true, true); }; /** * @name extractMetadataTypesInFolder * @description extractMetadataTypes (in folder) */ const extractMetadataTypesInFolder = (metadataObjects, config) => { _extractMetadataTypes(config, metadataObjects, config.metadataTypesInFolder, true, false); }; /** * @name extractMetadataTypes * @description extract metadataTypes from metadataObjects. */ const extractMetadataTypes = (metadataObjects, config) => { // extractMetadataTypes (no folder) extractMetadataTypesNoFolder(metadataObjects, config); // extractMetadataTypes (folder) extractMetadataTypesFolder(metadataObjects, config); // extractMetadataTypes (in folder) extractMetadataTypesInFolder(metadataObjects, config); }; exports.extractMetadataTypes = extractMetadataTypes; //# sourceMappingURL=extract-metadata-types.js.map