UNPKG

zephyr-xpack-internal

Version:

Xpack internals for Zephyr

37 lines (36 loc) • 1.24 kB
import "node:module"; function processFunctionRemotes(params) { const { functionRemotes, consumes } = params; if (!Array.isArray(functionRemotes)) return { consumes }; const dynamicConsumes = Object.values(functionRemotes.reduce((acc, [file, applicationID, name])=>{ const cleanName = name.replace('./', ''); const objectId = `${applicationID}/${cleanName}`; const cleanFile = file.replace('./', ''); const foundExistingConsume = consumes.find((consumeObj)=>consumeObj.applicationID === applicationID && consumeObj.name === cleanName); if (foundExistingConsume) { foundExistingConsume.usedIn.add(cleanFile); return acc; } if (acc[objectId]) { acc[objectId].usedIn.add(cleanFile); return acc; } acc[objectId] = { applicationID, name: cleanName, consumingApplicationID: name, usedIn: new Set([ cleanFile ]) }; return acc; }, {})); consumes.push(...dynamicConsumes); return { consumes }; } export { processFunctionRemotes }; //# sourceMappingURL=process-function-remotes.mjs.map