@image/packer
Version:
image packer
20 lines (19 loc) • 1.02 kB
JavaScript
export function perPageManifestsSaver(generateOptions, environment, result) {
return Promise.all(result.atlases.map(function (_, atlasIndex) {
return Promise.all(result.atlases[atlasIndex].sheets.map(function (__, pageIndex) {
return PageManifestSaver(atlasIndex, pageIndex, generateOptions, environment, result);
}));
}));
}
export function PageManifestSaver(atlasIndex, sheetIndex, generateOptions, environment, result) {
var sheet = result.atlases[atlasIndex].sheets[sheetIndex];
if (generateOptions.atlasPageMetaPathResolver) {
var outputFilePath = generateOptions.atlasPageMetaPathResolver(atlasIndex, sheetIndex, result);
var manifestRaw = generateOptions.pageManifestBuilder ?
generateOptions.pageManifestBuilder(atlasIndex, sheetIndex, result) :
sheet;
var raw = JSON.stringify(manifestRaw, null, 4);
return environment.writeFile(outputFilePath, raw);
}
return Promise.resolve();
}