Takes four options:
src
: source JSONout
: SCSS file outputtopKey
: SCSS map variable namefilterOn
: only include matching nodes from JSON source (optional)
require('laravel-mix-json-to-sass-map')
mix.jsonToSassMap({
src: './input.json',
out: './output.scss',
topKey: 'example',
filterOn: 'styles',
});
Will take this source:
{
"styles": {
"fontSizes": {
"small": "12",
"normal": "16",
"large": "20",
"larger": "36"
}
},
"other-data": {
"should-be": "ignored"
}
}
And write this SCSS file:
$example: (
"bootstrap-enabled": true,
"fontSizes": (
"small": 12,
"normal": 16,
"large": 20,
"larger": 36
),
);
MIT || © 2019 Kelly Mears