Склеиваем все .json в data.json и закидываем в PATHS.BUILD.html
gulp.task('twig:data', function () {
return gulp.src('./app-source/app-data/**/*.json')
.pipe(merge({
fileName: 'data.json',
edit: (json, file) => {
var filename = path.basename(file.path),
primaryKey = filename.replace(path.extname(filename), '');
var data = {};
data[primaryKey.toUpperCase()] = json;
return data;
}
}))
.pipe(gulp.dest(PATHS.BUILD.html));
});
И там где пытаетесь решить задачу:
.pipe(data(function(file) {
return JSON.parse(fs.readFileSync(`${PATHS.BUILD.html}/data.json`))
}))
Таск twig:data нужно выполнить перед компиляцией шаблона