zephyr-xpack-internal
Version:
Xpack internals for Zephyr
55 lines (54 loc) • 1.78 kB
JavaScript
import "node:module";
import { modulePartOne } from "./module-part-one.mjs";
import { convertDependencies } from "./convert-dependencies.mjs";
import { modulePartTwo } from "./module-part-two.mjs";
import { processFunctionRemotes } from "./process-function-remotes.mjs";
function convertToGraph(params) {
const { name, modules, topLevelPackage, metadata, versionData, environment, version, posted, group, functionRemotes, sha, buildHash, target } = params;
const { consumes, modulesObj, npmModules } = modulePartOne(modules);
const convertedDeps = convertDependencies({
package: topLevelPackage,
npmModules
});
const { overrides } = modulePartTwo({
name,
modules,
modulesObj,
convertedDeps
});
processFunctionRemotes({
functionRemotes,
consumes
});
const sourceUrl = metadata?.source?.url ?? '';
const remote = metadata?.remote ?? '';
return {
...convertedDeps,
id: name,
name,
remote,
metadata,
build_target: target,
versionData,
overrides: Object.values(overrides),
consumes: consumes.map((con)=>({
...con,
usedIn: Array.from(con.usedIn.values()).map((file)=>({
file,
url: `${sourceUrl}/${file}`
}))
})),
modules: Object.values(modulesObj).map((mod)=>({
...mod,
requires: Array.from(mod.requires.values()).filter((value)=>'string' == typeof value)
})),
environment,
version,
posted,
group,
sha,
buildHash
};
}
export { convertToGraph };
//# sourceMappingURL=convert-to-graph.mjs.map