Skip to content

Commit e7f6b00

Browse files
committed
Refactor CSS files to merge and minify modulate module grid styles
1 parent 081c034 commit e7f6b00

14 files changed

Lines changed: 1297 additions & 268 deletions

build.js

Lines changed: 58 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,58 @@ const fs = require('fs');
22
const csso = require('csso');
33
const path = require('path');
44

5-
// List of CSS files to be processed
6-
const allFiles = [
7-
'src/modulate-base.css',
8-
'src/modulate-fluid-sizing-basic.css',
9-
'src/modulate-fluid-sizing-classic.css',
10-
'src/modulate-fluid-sizing-modern.css',
11-
'src/modulate-module-grid.css',
12-
'src/modulate-header.css'
13-
];
14-
155
const packages = [
16-
[
17-
'src/modulate-base.css',
18-
'src/modulate-fluid-sizing-basic.css',
19-
'src/modulate-fluid-sizing-modern.css',
20-
'src/modulate-module-grid.css',
21-
'src/modulate-header.css'
22-
]
6+
{
7+
name: "modulate",
8+
files: [
9+
'src/modulate-base.css',
10+
'src/modulate-fluid-sizing-basic.css',
11+
'src/modulate-fluid-sizing-classic.css',
12+
'src/modulate-fluid-sizing-modern.css',
13+
'src/modulate-module-grid.css',
14+
'src/modulate-header.css'
15+
]
16+
},
17+
{
18+
name: "modulate-base",
19+
files: [
20+
'src/modulate-base.css',
21+
]
22+
},
23+
{
24+
name: "modulate-fluid-sizing",
25+
files: [
26+
'src/modulate-fluid-sizing-basic.css',
27+
'src/modulate-fluid-sizing-classic.css',
28+
'src/modulate-fluid-sizing-modern.css'
29+
]
30+
},
31+
{
32+
name: "modulate-fluid-sizing-classic",
33+
files: [
34+
'src/modulate-fluid-sizing-basic.css',
35+
'src/modulate-fluid-sizing-classic.css',
36+
]
37+
},
38+
{
39+
name: "modulate-fluid-sizing-modern",
40+
files: [
41+
'src/modulate-fluid-sizing-basic.css',
42+
'src/modulate-fluid-sizing-modern.css'
43+
]
44+
},
45+
{
46+
name: "modulate-grid",
47+
files: [
48+
'src/modulate-module-grid.css'
49+
]
50+
},
51+
{
52+
name: "modulate-header",
53+
files: [
54+
'src/modulate-header.css'
55+
]
56+
}
2357
]
2458

2559
// Ensure the dist/css directory exists
@@ -35,41 +69,25 @@ if (fs.existsSync(distDir)) {
3569
fs.mkdirSync(distDir, { recursive: true });
3670
console.log('Created dist/css directory');
3771

38-
// Process each file
39-
allFiles.forEach(file => {
40-
// Read the unminified content
41-
const input = fs.readFileSync(file, 'utf8');
42-
console.log(`Read file: ${file}`);
43-
44-
// Write the unminified file to dist/css
45-
const unminifiedOutputFileName = path.join(distDir, path.basename(file));
46-
fs.writeFileSync(unminifiedOutputFileName, input, 'utf8');
47-
console.log(`Written unminified file: ${unminifiedOutputFileName}`);
48-
49-
// Minify the content
50-
const output = csso.minify(input).css;
72+
function mergeAndMinifyFiles(package) {
5173

52-
// Write the minified file to dist/css
53-
const minifiedOutputFileName = unminifiedOutputFileName.replace('.css', '.min.css');
54-
fs.writeFileSync(minifiedOutputFileName, output, 'utf8');
55-
console.log(`Written minified file: ${minifiedOutputFileName}`);
56-
});
74+
const name = package.name;
75+
const files = package.files;
5776

58-
function mergeAndMinifyFiles(files) {
5977
// Merge all files into one
6078
const mergedInput = files.map(file => fs.readFileSync(file, 'utf8')).join('\n');
6179
console.log(`Merged files: ${files.join(', ')}`);
6280

6381
// Write the unminified merged file
64-
fs.writeFileSync('dist/css/modulate.css', mergedInput, 'utf8');
65-
console.log('Written unminified merged file: dist/css/modulate.css');
82+
fs.writeFileSync(`dist/css/${name}.css`, mergedInput, 'utf8');
83+
console.log(`Written unminified merged file: dist/css/modulate.css`);
6684

6785
// Minify the merged content
6886
const mergedOutput = csso.minify(mergedInput).css;
6987

7088
// Write the minified merged file
71-
fs.writeFileSync('dist/css/modulate.min.css', mergedOutput, 'utf8');
72-
console.log('Written minified merged file: dist/css/modulate.min.css');
89+
fs.writeFileSync(`dist/css/${name}.min.css`, mergedOutput, 'utf8');
90+
console.log(`Written minified merged file: dist/css/modulate.min.css`);
7391
}
7492

7593
packages.forEach(package => {

dist/css/modulate-fluid-sizing-basic.css

Lines changed: 0 additions & 182 deletions
This file was deleted.

0 commit comments

Comments
 (0)