export function styleLockfile(preview: string) {
// Match all lines that don't start with a whitespace character
const lines = preview.split(/\n(?!\s)/);
return lines.map(styleSection).join("\n");
}
function styleSection(section: string) {
const lines = section.split(/\n/);
return lines.map(styleLine).join("\n");
}
function styleLine(line: string) {
if (line.startsWith("#")) {
return `${line}`;
}
const parts = line.trim().split(" ");
if (line.startsWith(" ")) {
return ` ${parts[0]} ${parts[1]}`;
}
if (line.startsWith(" ")) {
const leftPart = ` ${parts[0]} `;
if (parts.length === 1) return `${leftPart}`;
if (parts[1].startsWith('"http://') || parts[1].startsWith('"https://'))
return `${leftPart}${parts[1]}`;
if (parts[1].startsWith('"')) return `${leftPart}${parts[1]}`;
return `${leftPart}${parts[1]}`;
}
return `${line} `;
}