in lib/prepare.js [786:824]
function updateFileResources (cordovaProject, locations) {
const platformDir = path.relative(cordovaProject.root, locations.root);
const files = cordovaProject.projectConfig.getFileResources('ios');
const project = projectFile.parse(locations);
// if there are resource-file elements in config.xml
if (files.length === 0) {
events.emit('verbose', 'This app does not have additional resource files defined');
return;
}
const resourceMap = {};
files.forEach(res => {
const src = res.src;
let target = res.target;
if (!target) {
target = src;
}
let targetPath = path.join(project.resources_dir, target);
targetPath = path.relative(cordovaProject.root, targetPath);
if (!fs.existsSync(targetPath)) {
project.xcode.addResourceFile(target);
} else {
events.emit('warn', `Overwriting existing resource file at ${targetPath}`);
}
resourceMap[targetPath] = src;
});
events.emit('verbose', `Updating resource files at ${platformDir}`);
FileUpdater.updatePaths(
resourceMap, { rootDir: cordovaProject.root }, logFileOp);
project.write();
}