everything-dev
Version:
A consolidated product package for building Module Federation apps with oRPC APIs.
32 lines (30 loc) • 1.07 kB
JavaScript
import { colors, icons } from "../../utils/theme.mjs";
import { padRight } from "../../utils/string.mjs";
import { formatDuration } from "../../utils/timing.mjs";
//#region src/cli/render/workspace-build.ts
/** The deploy build train's ✓/✗ table — exact presentation moved out of the
* service by #424. */
const cliWorkspaceBuildRender = {
banner: (total) => {
console.log();
console.log(` Building ${total} workspace${total > 1 ? "s" : ""}...`);
console.log();
},
prerequisites: (names) => {
console.log(` ${colors.dim(`prerequisites: rebuilt ${names.join(", ")}`)}`);
},
outcome: (outcome) => {
const name = padRight(outcome.key, 28);
if (outcome.success) console.log(` ${colors.green(icons.ok)} ${name} ${colors.dim(formatDuration(outcome.durationMs))}`);
else {
const errorLine = (outcome.error ?? "Failed").split("\n")[0];
console.log(` ${colors.error(icons.err)} ${name} ${errorLine}`);
}
},
end: () => {
console.log();
}
};
//#endregion
export { cliWorkspaceBuildRender };
//# sourceMappingURL=workspace-build.mjs.map