in lib/prepare.js [1127:1153]
function cleanLaunchStoryboardImages (projectRoot, projectConfig, locations) {
const splashScreens = projectConfig.getSplashScreens('ios');
const platformProjDir = path.relative(projectRoot, locations.xcodeCordovaProj);
const launchStoryboardImagesDir = getLaunchStoryboardImagesDir(projectRoot, platformProjDir);
if (launchStoryboardImagesDir) {
const resourceMap = mapLaunchStoryboardResources(splashScreens, launchStoryboardImagesDir);
const contentsJSON = getLaunchStoryboardContentsJSON(splashScreens, launchStoryboardImagesDir);
Object.keys(resourceMap).forEach(targetPath => {
resourceMap[targetPath] = null;
});
events.emit('verbose', `Cleaning storyboard image set at ${launchStoryboardImagesDir}`);
// Source paths are removed from the map, so updatePaths() will delete the target files.
FileUpdater.updatePaths(
resourceMap, { rootDir: projectRoot, all: true }, logFileOp);
// delete filename from contents.json
contentsJSON.images.forEach(image => {
image.filename = undefined;
});
events.emit('verbose', 'Updating Storyboard image set contents.json');
fs.writeFileSync(path.join(projectRoot, launchStoryboardImagesDir, 'Contents.json'),
JSON.stringify(contentsJSON, null, 2));
}
}