You've already forked The-API-Book
mirror of
https://github.com/twirl/The-API-Book.git
synced 2025-11-29 22:07:39 +02:00
22 lines
753 B
JavaScript
22 lines
753 B
JavaScript
|
|
const path = require('path');
|
||
|
|
const fs = require('fs');
|
||
|
|
|
||
|
|
const imageDataUri = require('image-data-uri');
|
||
|
|
const reworkCss = require('css');
|
||
|
|
|
||
|
|
module.exports = (css) => {
|
||
|
|
const ast = reworkCss.parse(css);
|
||
|
|
|
||
|
|
(ast.stylesheet.rules || []).forEach((rule) => {
|
||
|
|
(rule.declarations || []).forEach((declaration) => {
|
||
|
|
if (declaration.property == 'background-image') {
|
||
|
|
const file = declaration.value.match(/url\((.+)\)/)[1];
|
||
|
|
const data = fs.readFileSync(path.resolve(__dirname, '../..', file));
|
||
|
|
const uri = imageDataUri.encode(data, 'image/png');
|
||
|
|
declaration.value = `url(${uri})`;
|
||
|
|
}
|
||
|
|
});
|
||
|
|
})
|
||
|
|
|
||
|
|
return reworkCss.stringify(ast);
|
||
|
|
}
|