mirror of
https://github.com/nostalgic-css/NES.css.git
synced 2025-08-19 12:31:21 +02:00
refactor: Move SCSS functions and abstract build data retrieval
I've moved the SCSS functions file into the `scripts` directory where I think it makes a bit more sense. I've also abstracted most of the functionality from it so I can also use it in `semantic-release`'s preparation step.
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
"stylelint": "stylelint scss/**/*.scss",
|
||||
"build:stylelint": "npm run stylelint -- --fix",
|
||||
"build:clean": "rimraf css",
|
||||
"build:sass": "node-sass --output-style expanded --source-map true --functions scss/functions.js scss/nes.scss css/nes.css",
|
||||
"build:sass": "node-sass --output-style expanded --source-map true --functions scripts/scssFunctions.js scss/nes.scss css/nes.css",
|
||||
"build:autoprefix": "postcss --use autoprefixer --map false --output css/nes.css css/nes.css",
|
||||
"build:cleancss": "cleancss -o css/nes.min.css css/nes.css",
|
||||
"storybook": "start-storybook -p 6006",
|
||||
|
26
scripts/getBuildData.js
Normal file
26
scripts/getBuildData.js
Normal file
@@ -0,0 +1,26 @@
|
||||
const git = require('git-rev-sync'); /* eslint-disable-line import/no-extraneous-dependencies */
|
||||
|
||||
module.exports = (isCompiled = false) => {
|
||||
let buildData = '';
|
||||
|
||||
if (git.branch() !== 'master') {
|
||||
buildData += '\n';
|
||||
|
||||
if (isCompiled) {
|
||||
buildData += `
|
||||
Build Date: ${(new Date()).toISOString()}
|
||||
Node Version: ${process.version}`;
|
||||
}
|
||||
|
||||
buildData += `
|
||||
Branch: ${git.branch()}
|
||||
Commit: ${git.long()}`;
|
||||
|
||||
if (process.env.CIRCLECI) {
|
||||
buildData += `
|
||||
Build Number (CircleCI): ${process.env.CIRCLE_BUILD_NUM}`;
|
||||
}
|
||||
}
|
||||
|
||||
return buildData.replace(/\n/, '').replace(/^ +/gm, ' ');
|
||||
};
|
7
scripts/scssFunctions.js
Normal file
7
scripts/scssFunctions.js
Normal file
@@ -0,0 +1,7 @@
|
||||
const { types } = require('node-sass'); /* eslint-disable-line import/no-extraneous-dependencies */
|
||||
|
||||
const getBuildData = require('./getBuildData');
|
||||
|
||||
module.exports = {
|
||||
'build-data()': () => types.String(getBuildData(true)),
|
||||
};
|
@@ -1,28 +0,0 @@
|
||||
const git = require('git-rev-sync'); /* eslint-disable-line import/no-extraneous-dependencies */
|
||||
const { types } = require('node-sass'); /* eslint-disable-line import/no-extraneous-dependencies */
|
||||
|
||||
module.exports = {
|
||||
'version()': () => {
|
||||
const packageData = require('../package.json'); /* eslint-disable-line global-require */
|
||||
|
||||
let buildData = `
|
||||
NES.css Framework
|
||||
Version: ${(git.branch() === 'develop') ? 'development' : `v${packageData.version}`}
|
||||
`;
|
||||
|
||||
if (git.branch() !== 'master') {
|
||||
buildData += `
|
||||
Build Date: ${(new Date()).toISOString()}
|
||||
Node Version: ${process.version}
|
||||
Branch: ${git.branch()}
|
||||
Commit: ${git.long()}`;
|
||||
}
|
||||
|
||||
if (process.env.CIRCLECI) {
|
||||
buildData += `
|
||||
Build Number (CircleCI): ${process.env.CIRCLE_BUILD_NUM}`;
|
||||
}
|
||||
|
||||
return types.String(buildData.replace(/\n/, '').replace(/^ +/gm, ' '));
|
||||
},
|
||||
};
|
@@ -1,7 +1,9 @@
|
||||
@charset "utf-8";
|
||||
|
||||
/*****************************************************************************\
|
||||
#{version()}
|
||||
NES.css Framework
|
||||
Version: development
|
||||
#{build-data()}
|
||||
\*****************************************************************************/
|
||||
|
||||
@import "base/_index.scss";
|
||||
|
Reference in New Issue
Block a user