29 lines
865 B
JavaScript
29 lines
865 B
JavaScript
|
const { writeFileSync } = require('fs');
|
||
|
const path = require('path');
|
||
|
const prettier = require('prettier');
|
||
|
const { PATH_STARTUP_SCSS } = require('./constants');
|
||
|
|
||
|
const buildFinalContent = (raw) => {
|
||
|
const content = `// DO NOT EDIT! This is auto-generated from "yarn run generate:startup_css"
|
||
|
// Please see the feedback issue for more details and help:
|
||
|
// https://gitlab.com/gitlab-org/gitlab/-/issues/331812
|
||
|
@charset "UTF-8";
|
||
|
${raw}
|
||
|
@import 'startup/cloaking';
|
||
|
@include cloak-startup-scss(none);
|
||
|
`;
|
||
|
|
||
|
// We run prettier so that there is more determinism with the generated file.
|
||
|
return prettier.format(content, { parser: 'scss' });
|
||
|
};
|
||
|
|
||
|
const writeStartupSCSS = (name, raw) => {
|
||
|
const fullPath = path.join(PATH_STARTUP_SCSS, `${name}.scss`);
|
||
|
|
||
|
writeFileSync(fullPath, buildFinalContent(raw));
|
||
|
|
||
|
return fullPath;
|
||
|
};
|
||
|
|
||
|
module.exports = { writeStartupSCSS };
|