UNPKG

sf-decomposer

Version:

Break down large Salesforce metadata files into smaller, more manageable files for version control and then recreate deployment-compatible files.

32 lines 1.5 kB
'use strict'; /* eslint-disable no-await-in-loop */ import { existsSync } from 'node:fs'; import { readdir } from 'node:fs/promises'; import { join } from 'node:path'; import { wrapAllFilesWithLoyaltyRoot } from './wrapAllFilesWithLoyaltyRoot.js'; import { reassembleHandler } from './recomposeFileHandler.js'; export async function reassembleLoyaltyProgramSetup(basePath) { const children = await readdir(basePath, { withFileTypes: true }); for (const entry of children) { if (!entry.isDirectory()) continue; const metadataFolder = join(basePath, entry.name); const programProcessesPath = join(metadataFolder, 'programProcesses'); if (!existsSync(programProcessesPath)) continue; const processDirs = await readdir(programProcessesPath); for (const process of processDirs) { const processPath = join(programProcessesPath, process); const subDirs = await readdir(processPath, { withFileTypes: true }); for (const subDir of subDirs) { if (subDir.isDirectory()) { await reassembleHandler(join(processPath, subDir.name), 'xml', true); } } await reassembleHandler(processPath, 'xml', true); } await wrapAllFilesWithLoyaltyRoot(programProcessesPath); await reassembleHandler(metadataFolder, 'loyaltyProgramSetup-meta.xml', true); } } //# sourceMappingURL=resssembleLoyaltyProgramSetup.js.map